diff options
-rw-r--r-- | view/theme/redbasic/php/config.php | 80 | ||||
-rw-r--r-- | view/theme/redbasic/php/style.php | 99 | ||||
-rw-r--r-- | view/theme/redbasic/tpl/theme_settings.tpl | 7 |
3 files changed, 186 insertions, 0 deletions
diff --git a/view/theme/redbasic/php/config.php b/view/theme/redbasic/php/config.php new file mode 100644 index 000000000..dd82f8ec3 --- /dev/null +++ b/view/theme/redbasic/php/config.php @@ -0,0 +1,80 @@ +<?php +/** + * Theme settings + */ + +function theme_content(&$a) { + if(!local_user()) { return; } + + $font_size = get_pconfig(local_user(),'redbasic', 'font_size' ); + $line_height = get_pconfig(local_user(), 'redbasic', 'line_height' ); + $colour = get_pconfig(local_user(), 'redbasic', 'colour' ); + + return redbasic_form($a, $font_size, $line_height, $colour); +} + +function theme_post(&$a) { + if(!local_user()) { return; } + + if (isset($_POST['redbasic-settings-submit'])) { + set_pconfig(local_user(), 'redbasic', 'font_size', $_POST['redbasic_font_size']); + set_pconfig(local_user(), 'redbasic', 'line_height', $_POST['redbasic_line_height']); + set_pconfig(local_user(), 'redbasic', 'colour', $_POST['redbasic_colour']); + } +} + +function theme_admin(&$a) { + $font_size = get_config('redbasic', 'font_size' ); + $line_height = get_config('redbasic', 'line_height' ); + $colour = get_config('redbasic', 'colour' ); + + return redbasic_form($a, $font_size, $line_height, $colour); +} + +function theme_admin_post(&$a) { + if (isset($_POST['redbasic-settings-submit'])) { + set_config('redbasic', 'font_size', $_POST['redbasic_font_size']); + set_config('redbasic', 'line_height', $_POST['redbasic_line_height']); + set_config('redbasic', 'colour', $_POST['redbasic_colour']); + } +} + +function redbasic_form(&$a, $font_size, $line_height, $colour) { + $line_heights = array( + "1.3" => "1.3", + "---" => "---", + "1.6" => "1.6", + "1.5" => "1.5", + "1.4" => "1.4", + "1.2" => "1.2", + "1.1" => "1.1", + ); + $font_sizes = array( + '12' => '12', + '14' => '14', + "---" => "---", + "16" => "16", + "15" => "15", + '13.5' => '13.5', + '13' => '13', + '12.5' => '12.5', + '12' => '12', + ); + $colours = array( + 'light' => 'light', + 'dark' => 'dark', + ); + + $t = file_get_contents( dirname(__file__). "/theme_settings.tpl" ); + $o .= replace_macros($t, array( + '$submit' => t('Submit'), + '$baseurl' => $a->get_baseurl(), + '$title' => t("Theme settings"), + '$font_size' => array('redbasic_font_size', t('Set font-size for posts and comments'), $font_size, '', $font_sizes), + '$line_height' => array('redbasic_line_height', t('Set line-height for posts and comments'), $line_height, '', $line_heights), + '$colour' => array('redbasic_colour', t('Set colour scheme'), $colour, '', $colours), + )); + + return $o; +} + diff --git a/view/theme/redbasic/php/style.php b/view/theme/redbasic/php/style.php new file mode 100644 index 000000000..f2bc8e500 --- /dev/null +++ b/view/theme/redbasic/php/style.php @@ -0,0 +1,99 @@ +<?php + $line_height = false; + $redbasic_font_size = false; + $resolution = false; + $colour = false; + $site_line_height = get_config("redbasic","line_height"); + $site_redbasic_font_size = get_config("redbasic", "font_size" ); + $site_colour = get_config("redbasic", "colour" ); + + if (local_user()) { + $line_height = get_pconfig(local_user(), "redbasic","line_height"); + $redbasic_font_size = get_pconfig(local_user(), "redbasic", "font_size"); + $colour = get_pconfig(local_user(), "redbasic", "colour"); + } + + if ($line_height === false) { + $line_height = $site_line_height; + } + if ($line_height === false) { + $line_height = "1.2"; + } + if ($redbasic_font_size === false) { + $redbasic_font_size = $site_redbasic_font_size; + } + if ($redbasic_font_size === false) { + $redbasic_font_size = "12"; + } + if ($colour === false) { + $colour = $site_colour; + } + $colour = "light"; + + + if (file_exists("$THEMEPATH/css/style.css")) { + echo file_get_contents("$THEMEPATH/css/style.css"); + } + + + if($redbasic_font_size == "16") { + echo ".wall-item-content { + font-size: 16px; + }"; + } + if($redbasic_font_size == "15") { + echo ".wall-item-content { + font-size: 15px; + }"; + } + if($redbasic_font_size == "14") { + echo ".wall-item-content { + font-size: 14px; + }"; + } + if($redbasic_font_size == "13.5") { + echo ".wall-item-content { + font-size: 13.5px; + }"; + } + if($redbasic_font_size == "13") { + echo ".wall-item-content { + font-size: 13px; + }"; + } + if($redbasic_font_size == "12.5") { + echo ".wall-item-content { + font-size: 12.5px; + }"; + } + if($redbasic_font_size == "12") { + echo ".wall-item-content { + font-size: 12px; + }"; + } + if($line_height == "1.5") { + echo ".wall-item-content { + line-height: 1.5; + }"; + } + if($line_height == "1.4") { + echo ".wall-item-content { + line-height: 1.4; + }"; + } + if($line_height == "1.3") { + echo ".wall-item-content { + line-height: 1.3; + }"; + } + if($line_height == "1.2") { + echo ".wall-item-content { + line-height: 1.2; + }"; + } + if($line_height == "1.1") { + echo ".wall-item-content { + line-height: 1.1; + }"; + } + diff --git a/view/theme/redbasic/tpl/theme_settings.tpl b/view/theme/redbasic/tpl/theme_settings.tpl new file mode 100644 index 000000000..d0d153e73 --- /dev/null +++ b/view/theme/redbasic/tpl/theme_settings.tpl @@ -0,0 +1,7 @@ +{{inc field_select.tpl with $field=$font_size}}{{endinc}} + +{{inc field_select.tpl with $field=$line_height}}{{endinc}} + +<div class="settings-submit-wrapper"> + <input type="submit" value="$submit" class="settings-submit" name="redbasic-settings-submit" /> +</div> |