actively set all the theme options on the display settings page based on the current theme selection

This commit is contained in:
redmatrix 2016-09-01 17:09:58 -07:00
parent 678148b9aa
commit 720f1d7123
4 changed files with 32 additions and 9 deletions

View File

@ -10,6 +10,8 @@ class Theme_info extends \Zotlabs\Web\Controller {
if(! $theme)
killme();
$schemalist = array();
$theme_config = "";
if(($themeconfigfile = $this->get_theme_config_file($theme)) != null){
require_once($themeconfigfile);
@ -17,6 +19,12 @@ class Theme_info extends \Zotlabs\Web\Controller {
$clsname = ucfirst($theme) . 'Config';
$th_config = new $clsname();
$schemas = $th_config->get_schemas();
if($schemas) {
foreach($schemas as $k => $v) {
$schemalist[] = [ 'key' => $k, 'val' => $v ];
}
}
}
$theme_config = theme_content($a);
}
@ -39,7 +47,7 @@ class Theme_info extends \Zotlabs\Web\Controller {
'desc' => $desc,
'version' => $version,
'credits' => $credits,
'schemas' => $schemas,
'schemas' => $schemalist,
'config' => $theme_config
];
json_return_and_die($ret);

View File

@ -1247,12 +1247,6 @@ Array.prototype.remove = function(item) {
return this.push.apply(this, rest);
};
function previewTheme(elm) {
theme = $(elm).val();
$.getJSON('pretheme?f=&theme=' + theme,function(data) {
$('#theme-preview').html('<div id="theme-desc">' + data.desc + '</div><div id="theme-version">' + data.version + '</div><div id="theme-credits">' + data.credits + '</div><a href="' + data.img + '"><img src="' + data.img + '" style="max-width:100%; max-height:300px" alt="' + theme + '"></a>');
});
}
$(document).ready(function() {

View File

@ -8,6 +8,8 @@ $(document).ready(function() {
$('.token-mirror').html($('#id_token').val());
$('#id_token').keyup( function() { $('.token-mirror').html($('#id_token').val()); });
previewTheme($('#id_theme')[0]);
$("#id_permissions_role").change(function() {
var role = $("#id_permissions_role").val();
if(role == 'custom')
@ -17,6 +19,26 @@ $(document).ready(function() {
});
});
function setTheme(elm) {
$('#settings-form').submit();
}
function previewTheme(elm) {
theme = $(elm).val();
$.getJSON('theme_info/' + theme,function(data) {
$('#theme-preview').html('<div id="theme-desc">' + data.desc + '</div><div id="theme-version">' + data.version + '</div><div id="theme-credits">' + data.credits + '</div><a href="' + data.img + '"><img src="' + data.img + '" style="max-width:100%; max-height:300px" alt="' + theme + '"></a>');
$('#id_schema').empty();
$(data.schemas).each(function(index,item) {
$('<option/>',{value:item['key'],text:item['val']}).appendTo('#id_schema');
});
$('#custom-settings-content .section-content-tools-wrapper').html(data.config);
});
}
/**
* 0 nobody
* 1 perms_specific

View File

@ -6,8 +6,7 @@
* * Version: 1.0
* * Author: Fabrixxm
* * Maintainer: Mike Macgirvin
* * Compat: Red [*]
*
* * Maintainer: Mario Vavti
*/
function redbasic_init(&$a) {