aboutsummaryrefslogtreecommitdiffstats
path: root/view/theme
diff options
context:
space:
mode:
authorThomas Willingham <founder@kakste.com>2012-12-08 00:44:30 +0000
committerThomas Willingham <founder@kakste.com>2012-12-08 00:44:30 +0000
commitd71a827d84134efe13473bb274e7a8f4623608e7 (patch)
tree390f265ed3c81d2fc0360bf34a4ac5464b022485 /view/theme
parent44263d5ac3e5189df28c92f58c2875137052b6ea (diff)
downloadvolse-hubzilla-d71a827d84134efe13473bb274e7a8f4623608e7.tar.gz
volse-hubzilla-d71a827d84134efe13473bb274e7a8f4623608e7.tar.bz2
volse-hubzilla-d71a827d84134efe13473bb274e7a8f4623608e7.zip
Templates for theme settings. There is a 99% chance these do not work yet, even if you implement them.
Diffstat (limited to 'view/theme')
-rw-r--r--view/theme/redbasic/php/config.php80
-rw-r--r--view/theme/redbasic/php/style.php99
-rw-r--r--view/theme/redbasic/tpl/theme_settings.tpl7
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>