diff --git a/.gitignore b/.gitignore
index 8d86b9587..9e6504184 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,6 +9,7 @@ include/jquery-1.4.2.min.js
favicon.*
home.html
addon
+*.orig
*~
robots.txt
@@ -57,4 +58,4 @@ venv/
/view/asset
#ignore config files from JetBrains
-/.idea
\ No newline at end of file
+/.idea
diff --git a/boot.php b/boot.php
index 1ca8b8d8d..ba12f86d2 100644
--- a/boot.php
+++ b/boot.php
@@ -1292,7 +1292,7 @@ function get_server()
$server = Config::get("system", "directory");
if ($server == "") {
- $server = "http://dir.friendica.social";
+ $server = "https://dir.friendica.social";
}
return($server);
diff --git a/mod/admin.php b/mod/admin.php
index 7749cff6d..3090376be 100644
--- a/mod/admin.php
+++ b/mod/admin.php
@@ -1120,6 +1120,7 @@ function admin_page_site_post(App $a)
}
Config::set('system', 'language', $language);
Config::set('system', 'theme', $theme);
+ Theme::install($theme);
if ($theme_mobile == '---') {
Config::delete('system', 'mobile-theme');
diff --git a/mod/install.php b/mod/install.php
index eb740c7b6..06f728729 100644
--- a/mod/install.php
+++ b/mod/install.php
@@ -303,12 +303,13 @@ function install_content(App $a) {
* required : boolean
* help : string optional
*/
-function check_add(&$checks, $title, $status, $required, $help) {
+function check_add(&$checks, $title, $status, $required, $help, $error_msg = "") {
$checks[] = [
'title' => $title,
'status' => $status,
'required' => $required,
'help' => $help,
+ 'error_msg' => $error_msg,
];
}
@@ -489,18 +490,24 @@ function check_smarty3(&$checks) {
function check_htaccess(&$checks) {
$status = true;
$help = "";
+ $error_msg = "";
if (function_exists('curl_init')) {
- $test = Network::fetchUrl(System::baseUrl()."/install/testrewrite");
+ $test = Network::fetchUrlFull(System::baseUrl()."/install/testrewrite");
- if ($test != "ok") {
- $test = Network::fetchUrl(normalise_link(System::baseUrl()."/install/testrewrite"));
+ $url = normalise_link(System::baseUrl()."/install/testrewrite");
+ if ($test['body'] != "ok") {
+ $test = Network::fetchUrlFull($url);
}
- if ($test != "ok") {
+ if ($test['body'] != "ok") {
$status = false;
$help = L10n::t('Url rewrite in .htaccess is not working. Check your server configuration.');
+ $error_msg = [];
+ $error_msg['head'] = L10n::t('Error message from Curl when fetching');
+ $error_msg['url'] = $test['redirect_url'];
+ $error_msg['msg'] = $test['error'];
}
- check_add($checks, L10n::t('Url rewrite is working'), $status, true, $help);
+ check_add($checks, L10n::t('Url rewrite is working'), $status, true, $help, $error_msg);
} else {
// cannot check modrewrite if libcurl is not installed
/// @TODO Maybe issue warning here?
diff --git a/mod/settings.php b/mod/settings.php
index aec2b2a05..3102fef23 100644
--- a/mod/settings.php
+++ b/mod/settings.php
@@ -12,6 +12,7 @@ use Friendica\Core\Config;
use Friendica\Core\L10n;
use Friendica\Core\PConfig;
use Friendica\Core\System;
+use Friendica\Core\Theme;
use Friendica\Core\Worker;
use Friendica\Database\DBM;
use Friendica\Model\Contact;
@@ -354,6 +355,7 @@ function settings_post(App $a)
theme_post($a);
}
}
+ Theme::install($theme);
$r = q("UPDATE `user` SET `theme` = '%s' WHERE `uid` = %d",
dbesc($theme),
diff --git a/src/Util/Network.php b/src/Util/Network.php
index 4a11f9259..c1ea6e354 100644
--- a/src/Util/Network.php
+++ b/src/Util/Network.php
@@ -36,7 +36,30 @@ class Network
*/
public static function fetchUrl($url, $binary = false, &$redirects = 0, $timeout = 0, $accept_content = null, $cookiejar = 0)
{
- $ret = self::curl(
+ $ret = self::fetchUrlFull($url, $binary, $redirects, $timeout, $accept_content, $cookiejar);
+
+ return $ret['body'];
+ }
+
+ /**
+ * @brief Curl wrapper with array of return values.
+ *
+ * Inner workings and parameters are the same as @ref fetchUrl but returns an array with
+ * all the information collected during the fetch.
+ *
+ * @param string $url URL to fetch
+ * @param boolean $binary default false
+ * TRUE if asked to return binary results (file download)
+ * @param integer $redirects The recursion counter for internal use - default 0
+ * @param integer $timeout Timeout in seconds, default system config value or 60 seconds
+ * @param string $accept_content supply Accept: header with 'accept_content' as the value
+ * @param string $cookiejar Path to cookie jar file
+ *
+ * @return array With all relevant information, 'body' contains the actual fetched content.
+ */
+ public static function fetchUrlFull($url, $binary = false, &$redirects = 0, $timeout = 0, $accept_content = null, $cookiejar = 0)
+ {
+ return self::curl(
$url,
$binary,
$redirects,
@@ -45,8 +68,6 @@ class Network
'cookiejar'=>$cookiejar
]
);
-
- return($ret['body']);
}
/**
diff --git a/util/htconfig.vagrant.php b/util/htconfig.vagrant.php
index 9c96687e7..623b587ef 100644
--- a/util/htconfig.vagrant.php
+++ b/util/htconfig.vagrant.php
@@ -65,7 +65,7 @@ $a->config['system']['no_regfullname'] = true;
//$a->config['system']['block_local_dir'] = false;
// Location of the global directory
-$a->config['system']['directory'] = 'http://dir.friendica.social';
+$a->config['system']['directory'] = 'https://dir.friendica.social';
// turn on friendica's log
$a->config['system']['debugging'] = true;
diff --git a/view/install/style.css b/view/install/style.css
index 2f995d599..d6140a1bb 100644
--- a/view/install/style.css
+++ b/view/install/style.css
@@ -32,6 +32,9 @@ td.help {
td.help blockquote {
margin-left: 60px;
}
+.error_header {
+ margin-left: 60px;
+}
input[type="submit"] {
margin: 2em 0;
}
diff --git a/view/templates/field_checkbox.tpl b/view/templates/field_checkbox.tpl
index b66cced87..8275d4595 100644
--- a/view/templates/field_checkbox.tpl
+++ b/view/templates/field_checkbox.tpl
@@ -1,6 +1,8 @@
- {{$field.1}}
+ {{$field.1}}
+ {{if $field.3}}
{{$field.3}}
+ {{/if}}
diff --git a/view/templates/field_combobox.tpl b/view/templates/field_combobox.tpl
index 458655016..876e607cd 100644
--- a/view/templates/field_combobox.tpl
+++ b/view/templates/field_combobox.tpl
@@ -13,6 +13,8 @@
{{foreach $field.4 as $opt=>$val}}{{$val}} {{/foreach}}
- {{$field.3}}
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
diff --git a/view/templates/field_custom.tpl b/view/templates/field_custom.tpl
index 0b0928402..6649b0ff9 100644
--- a/view/templates/field_custom.tpl
+++ b/view/templates/field_custom.tpl
@@ -3,5 +3,7 @@
{{$field.1}}
{{$field.2}}
- {{$field.3}}
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
diff --git a/view/templates/field_input.tpl b/view/templates/field_input.tpl
index 495493f2f..850656bb8 100644
--- a/view/templates/field_input.tpl
+++ b/view/templates/field_input.tpl
@@ -2,5 +2,7 @@
{{$field.1}}
+ {{if $field.3}}
{{$field.3}}
+ {{/if}}
diff --git a/view/templates/field_intcheckbox.tpl b/view/templates/field_intcheckbox.tpl
index 73bdf6041..9c5f04e79 100644
--- a/view/templates/field_intcheckbox.tpl
+++ b/view/templates/field_intcheckbox.tpl
@@ -3,5 +3,7 @@
{{$field.1}}
+ {{if $field.4}}
{{$field.4}}
+ {{/if}}
diff --git a/view/templates/field_openid.tpl b/view/templates/field_openid.tpl
index 062ac6ac6..9a18bbc13 100644
--- a/view/templates/field_openid.tpl
+++ b/view/templates/field_openid.tpl
@@ -2,5 +2,7 @@
{{$field.1}}
- {{$field.3}}
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
diff --git a/view/templates/field_password.tpl b/view/templates/field_password.tpl
index 333ce67c3..4b4d4f2b2 100644
--- a/view/templates/field_password.tpl
+++ b/view/templates/field_password.tpl
@@ -2,5 +2,7 @@
{{$field.1}}
+ {{if $field.3}}
{{$field.3}}
+ {{/if}}
diff --git a/view/templates/field_radio.tpl b/view/templates/field_radio.tpl
index 6b880ed99..1e1d8e0b1 100644
--- a/view/templates/field_radio.tpl
+++ b/view/templates/field_radio.tpl
@@ -1,5 +1,7 @@
{{$field.1}}
+ {{if $field.3}}
{{$field.3}}
+ {{/if}}
diff --git a/view/templates/field_richtext.tpl b/view/templates/field_richtext.tpl
index 67553bb95..bc346ddb0 100644
--- a/view/templates/field_richtext.tpl
+++ b/view/templates/field_richtext.tpl
@@ -3,5 +3,7 @@
{{$field.1}}
- {{$field.3}}
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
diff --git a/view/templates/field_select.tpl b/view/templates/field_select.tpl
index 2d037439d..87a2ab9ff 100644
--- a/view/templates/field_select.tpl
+++ b/view/templates/field_select.tpl
@@ -5,5 +5,7 @@
{{foreach $field.4 as $opt=>$val}}{{$val}} {{/foreach}}
- {{$field.3}}
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
diff --git a/view/templates/field_select_raw.tpl b/view/templates/field_select_raw.tpl
index 4c826a042..147c028ef 100644
--- a/view/templates/field_select_raw.tpl
+++ b/view/templates/field_select_raw.tpl
@@ -5,5 +5,7 @@
{{$field.4}}
- {{$field.3}}
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
diff --git a/view/templates/field_textarea.tpl b/view/templates/field_textarea.tpl
index c37537d6e..60594a266 100644
--- a/view/templates/field_textarea.tpl
+++ b/view/templates/field_textarea.tpl
@@ -3,5 +3,7 @@
{{$field.1}}
- {{$field.3}}
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
diff --git a/view/templates/field_themeselect.tpl b/view/templates/field_themeselect.tpl
index 51f6057ae..5f56c187e 100644
--- a/view/templates/field_themeselect.tpl
+++ b/view/templates/field_themeselect.tpl
@@ -5,6 +5,8 @@
{{foreach $field.4 as $opt=>$val}}{{$val}} {{/foreach}}
- {{$field.3}}
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
{{if $field.5}}
{{/if}}
diff --git a/view/templates/field_yesno.tpl b/view/templates/field_yesno.tpl
index 155d0488b..7e7c3cc4e 100644
--- a/view/templates/field_yesno.tpl
+++ b/view/templates/field_yesno.tpl
@@ -10,5 +10,7 @@
{{if $field.4}}{{$field.4.1}}{{else}}ON{{/if}}
- {{$field.3}}
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
diff --git a/view/templates/htconfig.tpl b/view/templates/htconfig.tpl
index d72307fb5..1325a6177 100644
--- a/view/templates/htconfig.tpl
+++ b/view/templates/htconfig.tpl
@@ -107,7 +107,7 @@ $a->config['system']['no_regfullname'] = true;
//$a->config['system']['block_local_dir'] = false;
// Location of the global directory
-$a->config['system']['directory'] = 'http://dir.friendica.social';
+$a->config['system']['directory'] = 'https://dir.friendica.social';
// Authentication cookie lifetime, in days
$a->config['system']['auth_cookie_lifetime'] = 7;
diff --git a/view/templates/install_checks.tpl b/view/templates/install_checks.tpl
index 10a197482..f96072911 100644
--- a/view/templates/install_checks.tpl
+++ b/view/templates/install_checks.tpl
@@ -16,7 +16,13 @@
{{/if}}
{{if $check.required}}(required){{/if}}
{{if $check.help}}
- {{$check.help}}
+
+ {{$check.help}}
+ {{if $check.error_msg}}
+
+ {{$check.error_msg.msg}}
+ {{/if}}
+
{{/if}}
{{/foreach}}
diff --git a/view/templates/login.tpl b/view/templates/login.tpl
index e1e8c5f3a..029ebb034 100644
--- a/view/templates/login.tpl
+++ b/view/templates/login.tpl
@@ -4,11 +4,14 @@
-
{{$login}}
+
{{$login}}
{{include file="field_input.tpl" field=$lname}}
{{include file="field_password.tpl" field=$lpassword}}
+
{{if $openid}}
@@ -17,16 +20,11 @@
{{/if}}
- {{include file="field_checkbox.tpl" field=$lremember}}
-
-
-
+
+ {{include file="field_checkbox.tpl" field=$lremember}}
{{foreach $hiddens as $k=>$v}}
@@ -35,5 +33,11 @@
+{{if $register}}
+
+{{/if}}
diff --git a/view/theme/frio/README.md b/view/theme/frio/README.md
index 037028ff4..c729d1282 100644
--- a/view/theme/frio/README.md
+++ b/view/theme/frio/README.md
@@ -37,11 +37,11 @@ Don't blame me too much for ugly code and hacks. Fix it ;-)
**Theme - Settings**
![Theme - Settings](https://github.com/rabuzarus/frio/blob/master/img/screenshots/screenshot-settings.png)
-**Red schema**
-![Red schema](https://github.com/rabuzarus/frio/blob/master/img/screenshots/screenshot-schema-red.png)
+**Red scheme**
+![Red scheme](https://github.com/rabuzarus/frio/blob/master/img/screenshots/screenshot-scheme-red.png)
-**Love Music schema**
-![Love Music schema](https://github.com/rabuzarus/frio/blob/master/img/screenshots/screenshot-schema-love-music.png)
+**Love Music scheme**
+![Love Music scheme](https://github.com/rabuzarus/frio/blob/master/img/screenshots/screenshot-scheme-love-music.png)
**frio on mobile**
diff --git a/view/theme/frio/config.php b/view/theme/frio/config.php
index 9081d9df4..55a653696 100644
--- a/view/theme/frio/config.php
+++ b/view/theme/frio/config.php
@@ -8,128 +8,134 @@ use Friendica\Core\System;
require_once 'view/theme/frio/php/Image.php';
-function theme_post(App $a) {
+function theme_post(App $a)
+{
if (!local_user()) {
return;
}
if (isset($_POST['frio-settings-submit'])) {
- PConfig::set(local_user(), 'frio', 'schema', $_POST["frio_schema"]);
- PConfig::set(local_user(), 'frio', 'nav_bg', $_POST["frio_nav_bg"]);
- PConfig::set(local_user(), 'frio', 'nav_icon_color', $_POST["frio_nav_icon_color"]);
- PConfig::set(local_user(), 'frio', 'link_color', $_POST["frio_link_color"]);
- PConfig::set(local_user(), 'frio', 'background_color', $_POST["frio_background_color"]);
- PConfig::set(local_user(), 'frio', 'contentbg_transp', $_POST["frio_contentbg_transp"]);
- PConfig::set(local_user(), 'frio', 'background_image', $_POST["frio_background_image"]);
- PConfig::set(local_user(), 'frio', 'bg_image_option', $_POST["frio_bg_image_option"]);
+ PConfig::set(local_user(), 'frio', 'scheme', $_POST['frio_scheme']);
+ PConfig::set(local_user(), 'frio', 'nav_bg', $_POST['frio_nav_bg']);
+ PConfig::set(local_user(), 'frio', 'nav_icon_color', $_POST['frio_nav_icon_color']);
+ PConfig::set(local_user(), 'frio', 'link_color', $_POST['frio_link_color']);
+ PConfig::set(local_user(), 'frio', 'background_color', $_POST['frio_background_color']);
+ PConfig::set(local_user(), 'frio', 'contentbg_transp', $_POST['frio_contentbg_transp']);
+ PConfig::set(local_user(), 'frio', 'background_image', $_POST['frio_background_image']);
+ PConfig::set(local_user(), 'frio', 'bg_image_option', $_POST['frio_bg_image_option']);
PConfig::set(local_user(), 'frio', 'css_modified', time());
}
}
-function theme_admin_post(App $a) {
+function theme_admin_post(App $a)
+{
if (!local_user()) {
return;
}
if (isset($_POST['frio-settings-submit'])) {
- Config::set('frio', 'schema', $_POST["frio_schema"]);
- Config::set('frio', 'nav_bg', $_POST["frio_nav_bg"]);
- Config::set('frio', 'nav_icon_color', $_POST["frio_nav_icon_color"]);
- Config::set('frio', 'link_color', $_POST["frio_link_color"]);
- Config::set('frio', 'background_color', $_POST["frio_background_color"]);
- Config::set('frio', 'contentbg_transp', $_POST["frio_contentbg_transp"]);
- Config::set('frio', 'background_image', $_POST["frio_background_image"]);
- Config::set('frio', 'bg_image_option', $_POST["frio_bg_image_option"]);
- Config::set('frio', 'login_bg_image', $_POST["frio_login_bg_image"]);
- Config::set('frio', 'login_bg_color', $_POST["frio_login_bg_color"]);
+ Config::set('frio', 'scheme', $_POST['frio_scheme']);
+ Config::set('frio', 'nav_bg', $_POST['frio_nav_bg']);
+ Config::set('frio', 'nav_icon_color', $_POST['frio_nav_icon_color']);
+ Config::set('frio', 'link_color', $_POST['frio_link_color']);
+ Config::set('frio', 'background_color', $_POST['frio_background_color']);
+ Config::set('frio', 'contentbg_transp', $_POST['frio_contentbg_transp']);
+ Config::set('frio', 'background_image', $_POST['frio_background_image']);
+ Config::set('frio', 'bg_image_option', $_POST['frio_bg_image_option']);
+ Config::set('frio', 'login_bg_image', $_POST['frio_login_bg_image']);
+ Config::set('frio', 'login_bg_color', $_POST['frio_login_bg_color']);
Config::set('frio', 'css_modified', time());
}
}
-function theme_content(App $a) {
+function theme_content(App $a)
+{
if (!local_user()) {
return;
}
$arr = [];
- $arr["schema"] = PConfig::get(local_user(), 'frio', 'schema');
- $arr["nav_bg"] = PConfig::get(local_user(), 'frio', 'nav_bg');
- $arr["nav_icon_color"] = PConfig::get(local_user(), 'frio', 'nav_icon_color');
- $arr["link_color"] = PConfig::get(local_user(), 'frio', 'link_color');
- $arr["bgcolor"] = PConfig::get(local_user(), 'frio', 'background_color');
- $arr["contentbg_transp"] = PConfig::get(local_user(), 'frio', 'contentbg_transp');
- $arr["background_image"] = PConfig::get(local_user(), 'frio', 'background_image');
- $arr["bg_image_option"] = PConfig::get(local_user(), 'frio', 'bg_image_option');
+ $arr['scheme'] = PConfig::get(local_user(), 'frio', 'scheme', PConfig::get(local_user(), 'frio', 'schema'));
+ $arr['nav_bg'] = PConfig::get(local_user(), 'frio', 'nav_bg');
+ $arr['nav_icon_color'] = PConfig::get(local_user(), 'frio', 'nav_icon_color');
+ $arr['link_color'] = PConfig::get(local_user(), 'frio', 'link_color');
+ $arr['background_color'] = PConfig::get(local_user(), 'frio', 'background_color');
+ $arr['contentbg_transp'] = PConfig::get(local_user(), 'frio', 'contentbg_transp');
+ $arr['background_image'] = PConfig::get(local_user(), 'frio', 'background_image');
+ $arr['bg_image_option'] = PConfig::get(local_user(), 'frio', 'bg_image_option');
return frio_form($arr);
}
-function theme_admin(App $a) {
+function theme_admin(App $a)
+{
if (!local_user()) {
return;
}
$arr = [];
- $arr["schema"] = Config::get('frio', 'schema');
- $arr["nav_bg"] = Config::get('frio', 'nav_bg');
- $arr["nav_icon_color"] = Config::get('frio', 'nav_icon_color');
- $arr["link_color"] = Config::get('frio', 'link_color');
- $arr["bgcolor"] = Config::get('frio', 'background_color');
- $arr["contentbg_transp"] = Config::get('frio', 'contentbg_transp');
- $arr["background_image"] = Config::get('frio', 'background_image');
- $arr["bg_image_option"] = Config::get('frio', 'bg_image_option');
- $arr["login_bg_image"] = Config::get('frio', 'login_bg_image');
- $arr["login_bg_color"] = Config::get('frio', 'login_bg_color');
+ $arr['scheme'] = Config::get('frio', 'scheme', Config::get('frio', 'scheme'));
+ $arr['nav_bg'] = Config::get('frio', 'nav_bg');
+ $arr['nav_icon_color'] = Config::get('frio', 'nav_icon_color');
+ $arr['link_color'] = Config::get('frio', 'link_color');
+ $arr['background_color'] = Config::get('frio', 'background_color');
+ $arr['contentbg_transp'] = Config::get('frio', 'contentbg_transp');
+ $arr['background_image'] = Config::get('frio', 'background_image');
+ $arr['bg_image_option'] = Config::get('frio', 'bg_image_option');
+ $arr['login_bg_image'] = Config::get('frio', 'login_bg_image');
+ $arr['login_bg_color'] = Config::get('frio', 'login_bg_color');
return frio_form($arr);
}
-function frio_form($arr) {
- require_once("view/theme/frio/php/schema.php");
+function frio_form($arr)
+{
+ require_once 'view/theme/frio/php/scheme.php';
- $scheme_info = get_schema_info($arr["schema"]);
- $disable = $scheme_info["overwrites"];
+ $scheme_info = get_scheme_info($arr['scheme']);
+ $disable = $scheme_info['overwrites'];
if (!is_array($disable)) {
$disable = [];
}
$scheme_choices = [];
- $scheme_choices["---"] = L10n::t("Default");
- $files = glob('view/theme/frio/schema/*.php');
+ $scheme_choices['---'] = L10n::t('Custom');
+ $files = glob('view/theme/frio/scheme/*.php');
if ($files) {
foreach ($files as $file) {
- $f = basename($file, ".php");
+ $f = basename($file, '.php');
if ($f != 'default') {
- $scheme_name = $f;
+ $scheme_name = ucfirst($f);
$scheme_choices[$f] = $scheme_name;
}
}
}
- $background_image_help = "" . L10n::t("Note"). ": ".L10n::t("Check image permissions if all users are allowed to visit the image");
+ $background_image_help = '' . L10n::t('Note') . ': ' . L10n::t('Check image permissions if all users are allowed to see the image');
$t = get_markup_template('theme_settings.tpl');
$ctx = [
'$submit' => L10n::t('Submit'),
'$baseurl' => System::baseUrl(),
- '$title' => L10n::t("Theme settings"),
- '$schema' => ['frio_schema', L10n::t("Select scheme"), $arr["schema"], '', $scheme_choices],
- '$nav_bg' => array_key_exists("nav_bg", $disable) ? "" : ['frio_nav_bg', L10n::t('Navigation bar background color'), $arr['nav_bg'], '', false],
- '$nav_icon_color' => array_key_exists("nav_icon_color", $disable) ? "" : ['frio_nav_icon_color', L10n::t('Navigation bar icon color '), $arr['nav_icon_color'], '', false],
- '$link_color' => array_key_exists("link_color", $disable) ? "" : ['frio_link_color', L10n::t('Link color'), $arr['link_color'], '', false],
- '$bgcolor' => array_key_exists("bgcolor", $disable) ? "" : ['frio_background_color', L10n::t('Set the background color'), $arr['bgcolor'], '', false],
- '$contentbg_transp' => array_key_exists("contentbg_transp", $disable) ? "" : ['frio_contentbg_transp', L10n::t("Content background opacity"), ((isset($arr["contentbg_transp"]) && $arr["contentbg_transp"] != "") ? $arr["contentbg_transp"] : 100), ''],
- '$background_image' => array_key_exists("background_image", $disable) ? "" : ['frio_background_image', L10n::t('Set the background image'), $arr['background_image'], $background_image_help, false],
+ '$title' => L10n::t('Theme settings'),
+ '$scheme' => ['frio_scheme', L10n::t('Select color scheme'), $arr['scheme'], '', $scheme_choices],
+ '$nav_bg' => array_key_exists('nav_bg', $disable) ? '' : ['frio_nav_bg', L10n::t('Navigation bar background color'), $arr['nav_bg'], '', false],
+ '$nav_icon_color' => array_key_exists('nav_icon_color', $disable) ? '' : ['frio_nav_icon_color', L10n::t('Navigation bar icon color '), $arr['nav_icon_color'], '', false],
+ '$link_color' => array_key_exists('link_color', $disable) ? '' : ['frio_link_color', L10n::t('Link color'), $arr['link_color'], '', false],
+ '$background_color' => array_key_exists('background_color', $disable) ? '' : ['frio_background_color', L10n::t('Set the background color'), $arr['background_color'], '', false],
+ '$contentbg_transp' => array_key_exists('contentbg_transp', $disable) ? '' : ['frio_contentbg_transp', L10n::t('Content background opacity'), defaults($arr, 'contentbg_transp', 100), ''],
+ '$background_image' => array_key_exists('background_image', $disable) ? '' : ['frio_background_image', L10n::t('Set the background image'), $arr['background_image'], $background_image_help, false],
+ '$bg_image_options_title' => L10n::t('Background image style'),
'$bg_image_options' => Image::get_options($arr),
];
- if (array_key_exists("login_bg_image", $arr) && !array_key_exists("login_bg_image", $disable)) {
- $ctx['$login_bg_image'] = ['frio_login_bg_image', L10n::t('Login page background image'), $arr['login_bg_image'], $background_image_help, false];
- }
- if (array_key_exists("login_bg_color", $arr) && !array_key_exists("login_bg_color", $disable)) {
- $ctx['$login_bg_color'] = ['frio_login_bg_color', L10n::t('Login page background color'), $arr['login_bg_color'], L10n::t('Leave background image and color empty for theme defaults'), false];
+ if (array_key_exists('login_bg_image', $arr) && !array_key_exists('login_bg_image', $disable)) {
+ $ctx['$login_bg_image'] = ['frio_login_bg_image', L10n::t('Login page background image'), $arr['login_bg_image'], $background_image_help, false];
}
+ if (array_key_exists('login_bg_color', $arr) && !array_key_exists('login_bg_color', $disable)) {
+ $ctx['$login_bg_color'] = ['frio_login_bg_color', L10n::t('Login page background color'), $arr['login_bg_color'], L10n::t('Leave background image and color empty for theme defaults'), false];
+ }
$o = replace_macros($t, $ctx);
diff --git a/view/theme/frio/css/style.css b/view/theme/frio/css/style.css
index 8a3ca8629..18b2f4208 100644
--- a/view/theme/frio/css/style.css
+++ b/view/theme/frio/css/style.css
@@ -24,9 +24,10 @@ and open the template in the editor.
body {
padding-top: 110px;
- background-color: $bgcolor;
+ background-color: $background_color;
background-image: url("$background_image");
background-size: $background_size_img;
+ background-repeat: $background_repeat;
background-attachment: fixed;
color: #777;
/*color: #555;*/
@@ -3136,12 +3137,30 @@ section .profile-match-wrapper {
* Login page
*/
#login-submit-wrapper {
- display: flex;
- flex-wrap: wrap;
- justify-content: space-between;
- align-items: center;
+ float: right;
}
#lost-password-link { flex-grow: 2; }
+#login-lost-password-link {
+ margin-bottom: 10px;
+ float: right;
+}
+#div_id_remember {
+ float: left;
+}
+#id_password_wrapper {
+ margin-bottom: unset;
+}
+#login_openid {
+ clear: both;
+}
+#register-link {
+ color: white;
+ background: #8ad0a1;
+ width: 100%;
+}
+#login-end {
+ clear: both;
+}
.mod-home.is-not-singleuser,
.mod-login {
@@ -3166,12 +3185,15 @@ section .profile-match-wrapper {
margin-top: 2.5%;
}
+.mod-home.is-not-singleuser .login-form > #login-extra-links {
+ margin-top: 4em;
+}
+
.mod-home.is-not-singleuser .login-form > #login-form label,
.mod-login #content #login-form label {
color: #eee;
}
-
.mod-home.is-not-singleuser .login-panel-content,
.mod-login .login-panel-content {
background-color: rgba(255,255,255,.85);
@@ -3185,11 +3207,15 @@ section .profile-match-wrapper {
}
.mod-home.is-not-singleuser .login-form > #login-form,
+ .mod-home.is-not-singleuser .login-form > #login-extra-links,
.mod-login #content #login-form {
background-color: #fff;
padding: 1em;
position: relative;
- margin-top: 4em;
+ }
+ .mod-home.is-not-singleuser .login-form > #login-extra-links {
+ margin-top: unset;
+ background-color: white;
}
.mod-home.is-not-singleuser .login-form > #login-form label,
@@ -3197,7 +3223,7 @@ section .profile-match-wrapper {
color: #444;
}
- .mod-home.is-not-singleuser .login-form > #login-form::before,
+ .mod-home.is-not-singleuser .login-form::before,
.mod-login #content #login-form::before {
display: block;
position: absolute;
@@ -3210,7 +3236,7 @@ section .profile-match-wrapper {
z-index: -1;
}
- .mod-home.is-not-singleuser .login-form > #login-form::after,
+ .mod-home.is-not-singleuser .login-form::after,
.mod-login #content #login-form::after {
display: block;
position: absolute;
diff --git a/view/theme/frio/img/screenshots/screenshot-schema-love-music.png b/view/theme/frio/img/screenshots/screenshot-scheme-love-music.png
similarity index 100%
rename from view/theme/frio/img/screenshots/screenshot-schema-love-music.png
rename to view/theme/frio/img/screenshots/screenshot-scheme-love-music.png
diff --git a/view/theme/frio/img/screenshots/screenshot-schema-red.png b/view/theme/frio/img/screenshots/screenshot-scheme-red.png
similarity index 100%
rename from view/theme/frio/img/screenshots/screenshot-schema-red.png
rename to view/theme/frio/img/screenshots/screenshot-scheme-red.png
diff --git a/view/theme/frio/php/Image.php b/view/theme/frio/php/Image.php
index 2dc0345c7..72026cf02 100644
--- a/view/theme/frio/php/Image.php
+++ b/view/theme/frio/php/Image.php
@@ -21,14 +21,10 @@ class Image
public static function get_options($arr)
{
$bg_image_options = [
- 'repeat' => [
- 'frio_bg_image_option', L10n::t("Repeat the image"), "repeat", L10n::t("Will repeat your image to fill the background."), ($arr["bg_image_option"] == "repeat")],
- 'stretch' => [
- 'frio_bg_image_option', L10n::t("Stretch"), "stretch", L10n::t("Will stretch to width/height of the image."), ($arr["bg_image_option"] == "stretch")],
- 'cover' => [
- 'frio_bg_image_option', L10n::t("Resize fill and-clip"), "cover", L10n::t("Resize to fill and retain aspect ratio."), ($arr["bg_image_option"] == "cover")],
- 'contain' => [
- 'frio_bg_image_option', L10n::t("Resize best fit"), "contain", L10n::t("Resize to best fit and retain aspect ratio."), ($arr["bg_image_option"] == "contain")],
+ 'stretch' => ['frio_bg_image_option', L10n::t('Top Banner'), 'stretch', L10n::t('Resize image to the width of the screen and show background color below on long pages.'), ($arr['bg_image_option'] == 'stretch')],
+ 'cover' => ['frio_bg_image_option', L10n::t('Full screen'), 'cover', L10n::t('Resize image to fill entire screen, clipping either the right or the bottom.'), ($arr['bg_image_option'] == 'cover')],
+ 'contain' => ['frio_bg_image_option', L10n::t('Single row mosaic'), 'contain', L10n::t('Resize image to repeat it on a single row, either vertical or horizontal.'), ($arr['bg_image_option'] == 'contain')],
+ 'repeat' => ['frio_bg_image_option', L10n::t('Mosaic'), 'repeat', L10n::t('Repeat image to fill the screen.'), ($arr['bg_image_option'] == 'repeat')],
];
return $bg_image_options;
diff --git a/view/theme/frio/php/default.php b/view/theme/frio/php/default.php
index 62b98b79c..428d88788 100644
--- a/view/theme/frio/php/default.php
+++ b/view/theme/frio/php/default.php
@@ -43,10 +43,10 @@ if (!isset($minimal)) {
if (is_null($uid)) {
$uid = Profile::getThemeUid();
}
- $schema = PConfig::get($uid, 'frio', 'schema');
- if (($schema) && ($schema != '---')) {
- if (file_exists('view/theme/frio/schema/' . $schema . '.php')) {
- $schemefile = 'view/theme/frio/schema/' . $schema . '.php';
+ $scheme = PConfig::get($uid, 'frio', 'scheme', PConfig::get($uid, 'frio', 'schema'));
+ if (($scheme) && ($scheme != '---')) {
+ if (file_exists('view/theme/frio/scheme/' . $scheme . '.php')) {
+ $schemefile = 'view/theme/frio/scheme/' . $scheme . '.php';
require_once $schemefile;
}
} else {
diff --git a/view/theme/frio/php/schema.php b/view/theme/frio/php/schema.php
deleted file mode 100644
index 83aad53b7..000000000
--- a/view/theme/frio/php/schema.php
+++ /dev/null
@@ -1,74 +0,0 @@
- Author Name
- * 'description' => Schema description
- * 'version' => Schema version
- * 'overwrites' => Variables which overwriting custom settings
- */
-
-use Friendica\Core\PConfig;
-
-function get_schema_info($schema){
-
- $theme = current_theme();
- $themepath = "view/theme/" . $theme . "/";
- $schema = PConfig::get(local_user(),'frio', 'schema');
-
- $info=[
- 'name' => $schema,
- 'description' => "",
- 'author' => [],
- 'version' => "",
- 'overwrites' => []
- ];
-
- if (!is_file($themepath . "schema/" . $schema . ".php")) return $info;
-
- $f = file_get_contents($themepath . "schema/" . $schema . ".php");
-
- $r = preg_match("|/\*.*\*/|msU", $f, $m);
-
- if ($r){
- $ll = explode("\n", $m[0]);
- foreach( $ll as $l ) {
- $l = trim($l,"\t\n\r */");
- if ($l!=""){
- list($k,$v) = array_map("trim", explode(":",$l,2));
- $k= strtolower($k);
- if ($k=="author"){
- $r=preg_match("|([^<]+)<([^>]+)>|", $v, $m);
- if ($r) {
- $info['author'][] = ['name'=>$m[1], 'link'=>$m[2]];
- } else {
- $info['author'][] = ['name'=>$v];
- }
- } elseif ($k == "overwrites") {
- $theme_settings = explode(',',str_replace(' ','', $v));
- foreach ($theme_settings as $key => $value) {
- $info["overwrites"][$value] = true;
- }
- } else {
- if (array_key_exists($k,$info)){
- $info[$k]=$v;
- }
- }
-
- }
- }
-
- }
- return $info;
-}
diff --git a/view/theme/frio/php/scheme.php b/view/theme/frio/php/scheme.php
new file mode 100644
index 000000000..02de0a035
--- /dev/null
+++ b/view/theme/frio/php/scheme.php
@@ -0,0 +1,71 @@
+ Author Name
+ * 'description' => Scheme description
+ * 'version' => Scheme version
+ * 'overwrites' => Variables which overwriting custom settings
+ */
+use Friendica\Core\PConfig;
+
+function get_scheme_info($scheme)
+{
+ $theme = current_theme();
+ $themepath = 'view/theme/' . $theme . '/';
+ $scheme = PConfig::get(local_user(), 'frio', 'scheme', PConfig::get(local_user(), 'frio', 'scheme'));
+
+ $info = [
+ 'name' => $scheme,
+ 'description' => '',
+ 'author' => [],
+ 'version' => '',
+ 'overwrites' => []
+ ];
+
+ if (!is_file($themepath . 'scheme/' . $scheme . '.php')) return $info;
+
+ $f = file_get_contents($themepath . 'scheme/' . $scheme . '.php');
+
+ $r = preg_match('|/\*.*\*/|msU', $f, $m);
+
+ if ($r) {
+ $ll = explode("\n", $m[0]);
+ foreach ($ll as $l) {
+ $l = trim($l, "\t\n\r */");
+ if ($l != '') {
+ list($k, $v) = array_map('trim', explode(':', $l, 2));
+ $k = strtolower($k);
+ if ($k == 'author') {
+ $r = preg_match('|([^<]+)<([^>]+)>|', $v, $m);
+ if ($r) {
+ $info['author'][] = ['name' => $m[1], 'link' => $m[2]];
+ } else {
+ $info['author'][] = ['name' => $v];
+ }
+ } elseif ($k == 'overwrites') {
+ $theme_settings = explode(',', str_replace(' ', '', $v));
+ foreach ($theme_settings as $key => $value) {
+ $info['overwrites'][$value] = true;
+ }
+ } else {
+ if (array_key_exists($k, $info)) {
+ $info[$k] = $v;
+ }
+ }
+ }
+ }
+ }
+
+ return $info;
+}
diff --git a/view/theme/frio/php/standard.php b/view/theme/frio/php/standard.php
index edfec573b..64c4544cd 100644
--- a/view/theme/frio/php/standard.php
+++ b/view/theme/frio/php/standard.php
@@ -16,7 +16,7 @@
-";
+
Skip to main content
module !== 'install') {
PConfig::load($uid, 'frio');
// Load the profile owners pconfig.
- $schema = PConfig::get($uid, "frio", "schema");
- $nav_bg = PConfig::get($uid, "frio", "nav_bg");
- $nav_icon_color = PConfig::get($uid, "frio", "nav_icon_color");
- $link_color = PConfig::get($uid, "frio", "link_color");
- $bgcolor = PConfig::get($uid, "frio", "background_color");
- $contentbg_transp = PConfig::get($uid, "frio", "contentbg_transp");
- $background_image = PConfig::get($uid, "frio", "background_image");
- $bg_image_option = PConfig::get($uid, "frio", "bg_image_option");
- $modified = PConfig::get($uid, "frio", "css_modified");
+ $scheme = PConfig::get($uid, 'frio', 'scheme', PConfig::get($uid, 'frio', 'schema'));
+ $nav_bg = PConfig::get($uid, 'frio', 'nav_bg');
+ $nav_icon_color = PConfig::get($uid, 'frio', 'nav_icon_color');
+ $link_color = PConfig::get($uid, 'frio', 'link_color');
+ $background_color = PConfig::get($uid, 'frio', 'background_color');
+ $contentbg_transp = PConfig::get($uid, 'frio', 'contentbg_transp');
+ $background_image = PConfig::get($uid, 'frio', 'background_image');
+ $bg_image_option = PConfig::get($uid, 'frio', 'bg_image_option');
+ $modified = PConfig::get($uid, 'frio', 'css_modified');
// There is maybe the case that the user did never modify the theme settings.
// In this case we store the present time.
@@ -38,17 +38,17 @@ if ($a->module !== 'install') {
Config::load('frio');
// Load frios system config.
- $schema = Config::get("frio", "schema");
- $nav_bg = Config::get("frio", "nav_bg");
- $nav_icon_color = Config::get("frio", "nav_icon_color");
- $link_color = Config::get("frio", "link_color");
- $bgcolor = Config::get("frio", "background_color");
- $contentbg_transp = Config::get("frio", "contentbg_transp");
- $background_image = Config::get("frio", "background_image");
- $bg_image_option = Config::get("frio", "bg_image_option");
- $login_bg_image = Config::get("frio", "login_bg_image");
- $login_bg_color = Config::get("frio", "login_bg_color");
- $modified = Config::get("frio", "css_modified");
+ $scheme = Config::get('frio', 'scheme', Config::get('frio', 'schema'));
+ $nav_bg = Config::get('frio', 'nav_bg');
+ $nav_icon_color = Config::get('frio', 'nav_icon_color');
+ $link_color = Config::get('frio', 'link_color');
+ $background_color = Config::get('frio', 'background_color');
+ $contentbg_transp = Config::get('frio', 'contentbg_transp');
+ $background_image = Config::get('frio', 'background_image');
+ $bg_image_option = Config::get('frio', 'bg_image_option');
+ $login_bg_image = Config::get('frio', 'login_bg_image');
+ $login_bg_color = Config::get('frio', 'login_bg_color');
+ $modified = Config::get('frio', 'css_modified');
// There is maybe the case that the user did never modify the theme settings.
// In this case we store the present time.
@@ -59,60 +59,59 @@ if ($a->module !== 'install') {
}
// Now load the scheme. If a value is changed above, we'll keep the settings
-// If not, we'll keep those defined by the schema
-// Setting $schema to '' wasn't working for some reason, so we'll check it's
+// If not, we'll keep those defined by the scheme
+// Setting $scheme to '' wasn't working for some reason, so we'll check it's
// not --- like the mobile theme does instead.
-// Allow layouts to over-ride the schema.
-if (x($_REQUEST, 'schema')) {
- $schema = $_REQUEST['schema'];
+// Allow layouts to over-ride the scheme.
+if (x($_REQUEST, 'scheme')) {
+ $scheme = $_REQUEST['scheme'];
}
// Sanitize the data.
-$schema = !empty($schema) ? basename($schema) : "";
+$scheme = !empty($scheme) ? basename($scheme) : '';
-if (($schema) && ($schema != '---')) {
- if (file_exists('view/theme/frio/schema/' . $schema . '.php')) {
- $schemefile = 'view/theme/frio/schema/' . $schema . '.php';
+if (($scheme) && ($scheme != '---')) {
+ if (file_exists('view/theme/frio/scheme/' . $scheme . '.php')) {
+ $schemefile = 'view/theme/frio/scheme/' . $scheme . '.php';
require_once $schemefile;
}
- if (file_exists('view/theme/frio/schema/' . $schema . '.css')) {
- $schemecssfile = 'view/theme/frio/schema/' . $schema . '.css';
+ if (file_exists('view/theme/frio/scheme/' . $scheme . '.css')) {
+ $schemecssfile = 'view/theme/frio/scheme/' . $scheme . '.css';
}
}
-// If we haven't got a schema, load the default. We shouldn't touch this - we
+// If we haven't got a scheme, load the default. We shouldn't touch this - we
// should leave it for admins to define for themselves.
-// default.php and default.css MUST be symlinks to existing schema files.
-if (! $schema) {
- if (file_exists('view/theme/frio/schema/default.php')) {
- $schemefile = 'view/theme/frio/schema/default.php';
+// default.php and default.css MUST be symlinks to existing scheme files.
+if (!$scheme) {
+ if (file_exists('view/theme/frio/scheme/default.php')) {
+ $schemefile = 'view/theme/frio/scheme/default.php';
require_once $schemefile;
}
- if (file_exists('view/theme/frio/schema/default.css')) {
- $schemecssfile = 'view/theme/frio/schema/default.css';
+ if (file_exists('view/theme/frio/scheme/default.css')) {
+ $schemecssfile = 'view/theme/frio/scheme/default.css';
}
}
//Set some defaults - we have to do this after pulling owner settings, and we have to check for each setting
//individually. If we don't, we'll have problems if a user has set one, but not all options.
-$nav_bg = (empty($nav_bg) ? "#708fa0" : $nav_bg);
-$nav_icon_color = (empty($nav_icon_color) ? "#fff" : $nav_icon_color);
-$link_color = (empty($link_color) ? "#6fdbe8" : $link_color);
-$bgcolor = (empty($bgcolor) ? "#ededed" : $bgcolor);
+$nav_bg = (empty($nav_bg) ? '#708fa0' : $nav_bg);
+$nav_icon_color = (empty($nav_icon_color) ? '#fff' : $nav_icon_color);
+$link_color = (empty($link_color) ? '#6fdbe8' : $link_color);
+$background_color = (empty($background_color) ? '#ededed' : $background_color);
// The background image can not be empty. So we use a dummy jpg if no image was set.
$background_image = (empty($background_image) ? 'img/none.jpg' : $background_image);
-$modified = (empty($modified) ? time() :$modified);
+$modified = (empty($modified) ? time() : $modified);
// set a default login bg image if no custom image and no custom bg color are set.
if (empty($login_bg_image) && empty($login_bg_color)) {
- $login_bg_image = (empty($login_bg_image) ? 'img/login_bg.jpg' : $login_bg_image);
+ $login_bg_image = 'img/login_bg.jpg';
}
-$login_bg_color = (empty($login_bg_color) ? "#ededed" : $login_bg_color);
+$login_bg_color = (empty($login_bg_color) ? '#ededed' : $login_bg_color);
-
-$contentbg_transp = ((isset($contentbg_transp) && $contentbg_transp != "") ? $contentbg_transp : 100);
+$contentbg_transp = ((isset($contentbg_transp) && $contentbg_transp != '') ? $contentbg_transp : 100);
// Calculate some colors in dependance of existing colors.
// Some colors are calculated to don't have too many selection
@@ -153,29 +152,35 @@ if (!isset($link_hover_color)) {
if (!isset($bg_image_option)) {
$bg_image_option = null;
}
+
switch ($bg_image_option) {
- case "stretch":
- $background_size_img = "100%";
+ case 'stretch':
+ $background_size_img = '100%';
+ $background_repeat = 'no-repeat';
break;
- case "cover":
- $background_size_img ="cover";
+ case 'cover':
+ $background_size_img = 'cover';
+ $background_repeat = 'no-repeat';
break;
- case "repeat":
- $background_size_img = "auto";
+ case 'repeat':
+ $background_size_img = 'auto';
+ $background_repeat = 'repeat';
break;
- case "contain":
- $background_size_img = "contain";
+ case 'contain':
+ $background_size_img = 'contain';
+ $background_repeat = 'repeat';
break;
default:
- $background_size_img = "auto";
+ $background_size_img = 'auto';
+ $background_repeat = 'no-repeat';
break;
}
// Convert transparency level from percentage to opacity value.
$contentbg_transp = $contentbg_transp / 100;
-$options = [
+$options = [
'$nav_bg' => $nav_bg,
'$nav_icon_color' => $nav_icon_color,
'$nav_icon_hover_color' => $nav_icon_hover_color,
@@ -184,10 +189,11 @@ $options = [
'$menu_background_hover_color' => $menu_background_hover_color,
'$btn_primary_color' => $nav_icon_color,
'$btn_primary_hover_color' => $menu_background_hover_color,
- '$bgcolor' => $bgcolor,
+ '$background_color' => $background_color,
'$contentbg_transp' => $contentbg_transp,
'$background_image' => $background_image,
'$background_size_img' => $background_size_img,
+ '$background_repeat' => $background_repeat,
'$login_bg_image' => $login_bg_image,
'$login_bg_color' => $login_bg_color
];
@@ -214,13 +220,13 @@ $etag = md5($css);
// Set a header for caching.
header('Cache-Control: public');
-header('ETag: "'.$etag.'"');
-header('Last-Modified: '.$modified);
+header('ETag: "' . $etag . '"');
+header('Last-Modified: ' . $modified);
// Only send the CSS file if it was changed.
if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) || isset($_SERVER['HTTP_IF_NONE_MATCH'])) {
$cached_modified = gmdate('r', strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']));
- $cached_etag = str_replace(['"', "-gzip"], ['', ''],
+ $cached_etag = str_replace(['"', '-gzip'], ['', ''],
stripslashes($_SERVER['HTTP_IF_NONE_MATCH']));
if (($cached_modified == $modified) && ($cached_etag == $etag)) {
diff --git a/view/theme/frio/templates/field_checkbox.tpl b/view/theme/frio/templates/field_checkbox.tpl
index 787a82ebd..1fde3634a 100644
--- a/view/theme/frio/templates/field_checkbox.tpl
+++ b/view/theme/frio/templates/field_checkbox.tpl
@@ -4,6 +4,8 @@
{{$field.1}}
+ {{if $field.3}}
{{$field.3}}
+ {{/if}}
-
\ No newline at end of file
+
diff --git a/view/theme/frio/templates/field_colorinput.tpl b/view/theme/frio/templates/field_colorinput.tpl
index 886d647e9..704db346d 100644
--- a/view/theme/frio/templates/field_colorinput.tpl
+++ b/view/theme/frio/templates/field_colorinput.tpl
@@ -6,6 +6,8 @@
{{if $field.4}}{{$field.4}} {{/if}}
- {{$field.3}}
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
diff --git a/view/theme/frio/templates/field_custom.tpl b/view/theme/frio/templates/field_custom.tpl
index 20f529278..158073a64 100644
--- a/view/theme/frio/templates/field_custom.tpl
+++ b/view/theme/frio/templates/field_custom.tpl
@@ -2,5 +2,7 @@
{{$field.1}}
{{$field.2}}
- {{$field.3}}
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
diff --git a/view/theme/frio/templates/field_fileinput.tpl b/view/theme/frio/templates/field_fileinput.tpl
index 721a6535f..c5f8ac86d 100644
--- a/view/theme/frio/templates/field_fileinput.tpl
+++ b/view/theme/frio/templates/field_fileinput.tpl
@@ -6,6 +6,8 @@
{{if $field.4}}{{$field.4}} {{/if}}
- {{$field.3}}
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
diff --git a/view/theme/frio/templates/field_input.tpl b/view/theme/frio/templates/field_input.tpl
index bbd7535e5..62a7d72e8 100644
--- a/view/theme/frio/templates/field_input.tpl
+++ b/view/theme/frio/templates/field_input.tpl
@@ -2,6 +2,8 @@
diff --git a/view/theme/frio/templates/field_intcheckbox.tpl b/view/theme/frio/templates/field_intcheckbox.tpl
index 8863d14c4..f898c87fa 100644
--- a/view/theme/frio/templates/field_intcheckbox.tpl
+++ b/view/theme/frio/templates/field_intcheckbox.tpl
@@ -2,6 +2,8 @@
{{$field.1}}
- {{$field.4}}
+ {{if $field.4}}
+ {{$field.4}}
+ {{/if}}
diff --git a/view/theme/frio/templates/field_openid.tpl b/view/theme/frio/templates/field_openid.tpl
index 8081f9cf1..66f8c9e80 100644
--- a/view/theme/frio/templates/field_openid.tpl
+++ b/view/theme/frio/templates/field_openid.tpl
@@ -2,6 +2,8 @@
diff --git a/view/theme/frio/templates/field_password.tpl b/view/theme/frio/templates/field_password.tpl
index 31defaf33..7bef420a1 100644
--- a/view/theme/frio/templates/field_password.tpl
+++ b/view/theme/frio/templates/field_password.tpl
@@ -2,6 +2,8 @@
diff --git a/view/theme/frio/templates/field_radio.tpl b/view/theme/frio/templates/field_radio.tpl
index 42c145e3a..725e1c96a 100644
--- a/view/theme/frio/templates/field_radio.tpl
+++ b/view/theme/frio/templates/field_radio.tpl
@@ -4,7 +4,9 @@
{{$field.1}}
+ {{if $field.3}}
{{$field.3}}
+ {{/if}}
-
\ No newline at end of file
+
diff --git a/view/theme/frio/templates/field_select.tpl b/view/theme/frio/templates/field_select.tpl
index 9c0315121..594b91002 100644
--- a/view/theme/frio/templates/field_select.tpl
+++ b/view/theme/frio/templates/field_select.tpl
@@ -4,5 +4,7 @@
{{foreach $field.4 as $opt=>$val}}{{$val}} {{/foreach}}
- {{$field.3}}
-
\ No newline at end of file
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
+
diff --git a/view/theme/frio/templates/field_select_raw.tpl b/view/theme/frio/templates/field_select_raw.tpl
index d4f476860..52b63079c 100644
--- a/view/theme/frio/templates/field_select_raw.tpl
+++ b/view/theme/frio/templates/field_select_raw.tpl
@@ -4,5 +4,7 @@
{{$field.4}}
- {{$field.3}}
-
\ No newline at end of file
+ {{if $field.3}}
+ {{$field.3}}
+ {{/if}}
+
diff --git a/view/theme/frio/templates/field_textarea.tpl b/view/theme/frio/templates/field_textarea.tpl
index 8ef56babb..1aea484de 100644
--- a/view/theme/frio/templates/field_textarea.tpl
+++ b/view/theme/frio/templates/field_textarea.tpl
@@ -2,6 +2,8 @@
{{$field.1}}
-
{{$field.3}}
+ {{if $field.3}}
+
{{$field.3}}
+ {{/if}}
diff --git a/view/theme/frio/templates/field_themeselect.tpl b/view/theme/frio/templates/field_themeselect.tpl
index 3b2cb780c..fc1f7243a 100644
--- a/view/theme/frio/templates/field_themeselect.tpl
+++ b/view/theme/frio/templates/field_themeselect.tpl
@@ -5,6 +5,8 @@
{{foreach $field.4 as $opt=>$val}}{{$val}} {{/foreach}}
+ {{if $field.3}}
{{$field.3}}
+ {{/if}}
{{if $field.5=="preview"}}
{{/if}}
-
\ No newline at end of file
+
diff --git a/view/theme/frio/templates/field_yesno.tpl b/view/theme/frio/templates/field_yesno.tpl
index 85096c70e..47649fe67 100644
--- a/view/theme/frio/templates/field_yesno.tpl
+++ b/view/theme/frio/templates/field_yesno.tpl
@@ -14,6 +14,8 @@
+ {{if $field.3}}
{{$field.3}}
+ {{/if}}
diff --git a/view/theme/frio/templates/login.tpl b/view/theme/frio/templates/login.tpl
index aaa42d24b..ae586a3e6 100644
--- a/view/theme/frio/templates/login.tpl
+++ b/view/theme/frio/templates/login.tpl
@@ -8,6 +8,10 @@
{{include file="field_input.tpl" field=$lname}}
{{include file="field_password.tpl" field=$lpassword}}
+
+
{{if $openid}}
@@ -19,10 +23,7 @@
{{include file="field_checkbox.tpl" field=$lremember}}
@@ -32,7 +33,15 @@
{{/foreach}}
+
+{{if $register}}
+
+{{/if}}
+
diff --git a/view/theme/frio/templates/theme_settings.tpl b/view/theme/frio/templates/theme_settings.tpl
index adc2150cf..50a8934d1 100644
--- a/view/theme/frio/templates/theme_settings.tpl
+++ b/view/theme/frio/templates/theme_settings.tpl
@@ -4,13 +4,13 @@
-{{include file="field_select.tpl" field=$schema}}
+{{include file="field_select.tpl" field=$scheme}}
{{if $nav_bg}}{{include file="field_colorinput.tpl" field=$nav_bg}}{{/if}}
{{if $nav_icon_color}}{{include file="field_colorinput.tpl" field=$nav_icon_color}}{{/if}}
{{if $link_color}}{{include file="field_colorinput.tpl" field=$link_color}}{{/if}}
-{{if $bgcolor}}{{include file="field_colorinput.tpl" field=$bgcolor}}{{/if}}
+{{if $background_color}}{{include file="field_colorinput.tpl" field=$background_color}}{{/if}}
{{* The slider for the content opacity - We use no template for this since it is only used at this page *}}
{{if $contentbg_transp}}
@@ -25,6 +25,7 @@
{{if $background_image}}{{include file="field_fileinput.tpl" field=$background_image}}{{/if}}
+
{{$bg_image_options_title}}:
{{foreach $bg_image_options as $options}}
{{include file="field_radio.tpl" field=$options}}
{{/foreach}}
diff --git a/view/theme/frio/theme.php b/view/theme/frio/theme.php
index 74b1577dd..4f5756caf 100644
--- a/view/theme/frio/theme.php
+++ b/view/theme/frio/theme.php
@@ -18,7 +18,7 @@ use Friendica\Core\System;
use Friendica\Database\DBM;
use Friendica\Model\Profile;
-$frio = "view/theme/frio";
+$frio = 'view/theme/frio';
global $frio;
@@ -34,21 +34,21 @@ function frio_init(App $a)
$style = PConfig::get(local_user(), 'frio', 'style');
- $frio = "view/theme/frio";
+ $frio = 'view/theme/frio';
global $frio;
// if the device is a mobile device set js is_mobile
// variable so the js scripts can use this information
if ($a->is_mobile || $a->is_tablet) {
- $a->page["htmlhead"] .= <<< EOT
+ $a->page['htmlhead'] .= <<< EOT
EOT;
}
- if ($style == "") {
+ if ($style == '') {
$style = Config::get('frio', 'style');
}
}
@@ -62,7 +62,7 @@ function frio_install()
Addon::registerHook('acl_lookup_end', 'view/theme/frio/theme.php', 'frio_acl_lookup');
Addon::registerHook('display_item', 'view/theme/frio/theme.php', 'frio_display_item');
- logger("installed theme frio");
+ logger('installed theme frio');
}
function frio_uninstall()
@@ -74,7 +74,7 @@ function frio_uninstall()
Addon::unregisterHook('acl_lookup_end', 'view/theme/frio/theme.php', 'frio_acl_lookup');
Addon::unregisterHook('display_item', 'view/theme/frio/theme.php', 'frio_display_item');
- logger("uninstalled theme frio");
+ logger('uninstalled theme frio');
}
/**
@@ -92,26 +92,26 @@ function frio_uninstall()
function frio_item_photo_links(App $a, &$body_info)
{
$occurence = 0;
- $p = Plaintext::getBoundariesPosition($body_info['html'], "
");
+ $p = Plaintext::getBoundariesPosition($body_info['html'], ' ');
while ($p !== false && ($occurence++ < 500)) {
$link = substr($body_info['html'], $p['start'], $p['end'] - $p['start']);
$matches = [];
- preg_match("/\/photos\/[\w]+\/image\/([\w]+)/", $link, $matches);
+ preg_match('/\/photos\/[\w]+\/image\/([\w]+)/', $link, $matches);
if ($matches) {
// Replace the link for the photo's page with a direct link to the photo itself
$newlink = str_replace($matches[0], "/photo/{$matches[1]}", $link);
// Add a "quiet" parameter to any redir links to prevent the "XX welcomes YY" info boxes
- $newlink = preg_replace("/href=\"([^\"]+)\/redir\/([^\"]+)&url=([^\"]+)\"/", 'href="$1/redir/$2&quiet=1&url=$3"', $newlink);
+ $newlink = preg_replace('/href="([^"]+)\/redir\/([^"]+)&url=([^"]+)"/', 'href="$1/redir/$2&quiet=1&url=$3"', $newlink);
// Having any arguments to the link for Colorbox causes it to fetch base64 code instead of the image
- $newlink = preg_replace("/\/[?&]zrl=([^&\"]+)/", '', $newlink);
+ $newlink = preg_replace('/\/[?&]zrl=([^&"]+)/', '', $newlink);
$body_info['html'] = str_replace($link, $newlink, $body_info['html']);
}
- $p = Plaintext::getBoundariesPosition($body_info['html'], " ", $occurence);
+ $p = Plaintext::getBoundariesPosition($body_info['html'], ' ', $occurence);
}
}
@@ -127,10 +127,10 @@ function frio_item_photo_links(App $a, &$body_info)
*/
function frio_item_photo_menu(App $a, &$arr)
{
- foreach ($arr["menu"] as $k => $v) {
+ foreach ($arr['menu'] as $k => $v) {
if (strpos($v, 'poke/?f=&c=') === 0 || strpos($v, 'message/new/') === 0) {
- $v = "javascript:addToModal('" . $v . "'); return false;";
- $arr["menu"][$k] = $v;
+ $v = 'javascript:addToModal(\'' . $v . '\'); return false;';
+ $arr['menu'][$k] = $v;
}
}
}
@@ -149,9 +149,9 @@ function frio_item_photo_menu(App $a, &$arr)
*/
function frio_contact_photo_menu(App $a, &$args)
{
- $cid = $args["contact"]["id"];
- $pokelink = $args["menu"]["poke"][1];
- $pmlink = $args["menu"]["pm"][1];
+ $cid = $args['contact']['id'];
+ $pokelink = $args['menu']['poke'][1];
+ $pmlink = $args['menu']['pm'][1];
// Set the the indicator for opening the status, profile and photo pages
// in a new tab to false if the contact a dfrn (friendica) contact
@@ -160,12 +160,12 @@ function frio_contact_photo_menu(App $a, &$args)
// friendica servers as remote user or visitor
//
// The value for opening in a new tab is e.g. when
- // $args["menu"]["status"][2] is true. If the value of the [2] key is true
+ // $args['menu']['status'][2] is true. If the value of the [2] key is true
// and if it's a friendica contact we set it to false
- foreach ($args["menu"] as $k => $v) {
- if ($k === "status" || $k === "profile" || $k === "photos") {
- $v[2] = (($args["contact"]["network"] === "dfrn") ? false : true);
- $args["menu"][$k][2] = $v[2];
+ foreach ($args['menu'] as $k => $v) {
+ if ($k === 'status' || $k === 'profile' || $k === 'photos') {
+ $v[2] = (($args['contact']['network'] === 'dfrn') ? false : true);
+ $args['menu'][$k][2] = $v[2];
}
}
@@ -173,11 +173,11 @@ function frio_contact_photo_menu(App $a, &$args)
// Later we can make conditions in the corresponing templates (e.g.
// contact_template.tpl)
if (strpos($pokelink, 'poke/?f=&c=' . $cid) !== false) {
- $args["menu"]["poke"][3] = "modal";
+ $args['menu']['poke'][3] = 'modal';
}
if (strpos($pmlink, 'message/new/' . $cid) !== false) {
- $args["menu"]["pm"][3] = "modal";
+ $args['menu']['pm'][3] = 'modal';
}
}
@@ -231,43 +231,43 @@ function frio_remote_nav($a, &$nav)
// user info
$r = q("SELECT `micro` FROM `contact` WHERE `uid` = %d AND `self`", intval($a->user['uid']));
- $r[0]['photo'] = (DBM::is_result($r) ? $a->remove_baseurl($r[0]['micro']) : "images/person-48.jpg");
+ $r[0]['photo'] = (DBM::is_result($r) ? $a->remove_baseurl($r[0]['micro']) : 'images/person-48.jpg');
$r[0]['name'] = $a->user['username'];
} elseif (!local_user() && remote_user()) {
$r = q("SELECT `name`, `nick`, `micro` AS `photo` FROM `contact` WHERE `id` = %d", intval(remote_user()));
- $nav['remote'] = L10n::t("Guest");
+ $nav['remote'] = L10n::t('Guest');
} elseif (Profile::getMyURL()) {
$r = q("SELECT `name`, `nick`, `photo` FROM `gcontact`
WHERE `addr` = '%s' AND `network` = 'dfrn'",
dbesc($webbie));
- $nav['remote'] = L10n::t("Visitor");
+ $nav['remote'] = L10n::t('Visitor');
} else {
$r = false;
}
if (DBM::is_result($r)) {
$nav['userinfo'] = [
- 'icon' => (DBM::is_result($r) ? $r[0]['photo'] : "images/person-48.jpg"),
+ 'icon' => (DBM::is_result($r) ? $r[0]['photo'] : 'images/person-48.jpg'),
'name' => $r[0]['name'],
];
}
if (!local_user() && !empty($server_url)) {
- $nav['logout'] = [$server_url . '/logout', L10n::t('Logout'), "", L10n::t('End this session')];
+ $nav['logout'] = [$server_url . '/logout', L10n::t('Logout'), '', L10n::t('End this session')];
// user menu
- $nav['usermenu'][] = [$server_url . '/profile/' . $a->user['nickname'], L10n::t('Status'), "", L10n::t('Your posts and conversations')];
- $nav['usermenu'][] = [$server_url . '/profile/' . $a->user['nickname'] . '?tab=profile', L10n::t('Profile'), "", L10n::t('Your profile page')];
- $nav['usermenu'][] = [$server_url . '/photos/' . $a->user['nickname'], L10n::t('Photos'), "", L10n::t('Your photos')];
- $nav['usermenu'][] = [$server_url . '/videos/' . $a->user['nickname'], L10n::t('Videos'), "", L10n::t('Your videos')];
- $nav['usermenu'][] = [$server_url . '/events/', L10n::t('Events'), "", L10n::t('Your events')];
+ $nav['usermenu'][] = [$server_url . '/profile/' . $a->user['nickname'], L10n::t('Status'), '', L10n::t('Your posts and conversations')];
+ $nav['usermenu'][] = [$server_url . '/profile/' . $a->user['nickname'] . '?tab=profile', L10n::t('Profile'), '', L10n::t('Your profile page')];
+ $nav['usermenu'][] = [$server_url . '/photos/' . $a->user['nickname'], L10n::t('Photos'), '', L10n::t('Your photos')];
+ $nav['usermenu'][] = [$server_url . '/videos/' . $a->user['nickname'], L10n::t('Videos'), '', L10n::t('Your videos')];
+ $nav['usermenu'][] = [$server_url . '/events/', L10n::t('Events'), '', L10n::t('Your events')];
// navbar links
- $nav['network'] = [$server_url . '/network', L10n::t('Network'), "", L10n::t('Conversations from your friends')];
- $nav['events'] = [$server_url . '/events', L10n::t('Events'), "", L10n::t('Events and Calendar')];
- $nav['messages'] = [$server_url . '/message', L10n::t('Messages'), "", L10n::t('Private mail')];
- $nav['settings'] = [$server_url . '/settings', L10n::t('Settings'), "", L10n::t('Account settings')];
- $nav['contacts'] = [$server_url . '/contacts', L10n::t('Contacts'), "", L10n::t('Manage/edit friends and contacts')];
+ $nav['network'] = [$server_url . '/network', L10n::t('Network'), '', L10n::t('Conversations from your friends')];
+ $nav['events'] = [$server_url . '/events', L10n::t('Events'), '', L10n::t('Events and Calendar')];
+ $nav['messages'] = [$server_url . '/message', L10n::t('Messages'), '', L10n::t('Private mail')];
+ $nav['settings'] = [$server_url . '/settings', L10n::t('Settings'), '', L10n::t('Account settings')];
+ $nav['contacts'] = [$server_url . '/contacts', L10n::t('Contacts'), '', L10n::t('Manage/edit friends and contacts')];
$nav['sitename'] = $a->config['sitename'];
}
}
@@ -289,17 +289,17 @@ function frio_acl_lookup(App $a, &$results)
{
require_once 'mod/contacts.php';
- $nets = x($_GET, "nets") ? notags(trim($_GET["nets"])) : "";
+ $nets = x($_GET, 'nets') ? notags(trim($_GET['nets'])) : '';
// we introduce a new search type, r should do the same query like it's
// done in /mod/contacts for connections
- if ($results["type"] !== "r") {
+ if ($results['type'] !== 'r') {
return;
}
$sql_extra = '';
- if ($results["search"]) {
- $search_txt = dbesc(protect_sprintf(preg_quote($results["search"])));
+ if ($results['search']) {
+ $search_txt = dbesc(protect_sprintf(preg_quote($results['search'])));
$sql_extra .= " AND (`attag` LIKE '%%" . dbesc($search_txt) . "%%' OR `name` LIKE '%%" . dbesc($search_txt) . "%%' OR `nick` LIKE '%%" . dbesc($search_txt) . "%%') ";
}
@@ -311,7 +311,7 @@ function frio_acl_lookup(App $a, &$results)
$r = q("SELECT COUNT(*) AS `total` FROM `contact`
WHERE `uid` = %d AND NOT `self` AND NOT `pending` $sql_extra ", intval($_SESSION['uid']));
if (DBM::is_result($r)) {
- $total = $r[0]["total"];
+ $total = $r[0]['total'];
}
$sql_extra3 = Widget::unavailableNetworks();
@@ -328,8 +328,8 @@ function frio_acl_lookup(App $a, &$results)
}
}
- $results["items"] = $contacts;
- $results["tot"] = $total;
+ $results['items'] = $contacts;
+ $results['tot'] = $total;
}
/**
diff --git a/view/theme/vier/mobile.css b/view/theme/vier/mobile.css
index 66721a1b8..b528ca4bd 100644
--- a/view/theme/vier/mobile.css
+++ b/view/theme/vier/mobile.css
@@ -91,6 +91,13 @@ nav ul {
width: 100% !important; height: 110px !important;
}
+ #login-extra-links, #login-form {
+ /* width: 341px; */
+ width: 100%;
+ }
+ #id_remember_label {
+ width: unset;
+ }
}
@media screen and (max-width: 480px) {
diff --git a/view/theme/vier/style.css b/view/theme/vier/style.css
index ba10b1602..288ede31d 100644
--- a/view/theme/vier/style.css
+++ b/view/theme/vier/style.css
@@ -2422,10 +2422,60 @@ aside #div_id_remember label {
float: inherit;
}
+#login-group {
+ overflow: hidden;
+}
+
+#login-head {
+ position: unset;
+ width: unset;
+ height: unset;
+ margin-bottom: 10px;
+}
+
+div #wrapper_username {
+ padding: 0px;
+}
+
+div #wrapper_password {
+ padding: 0px;
+ margin-bottom: 0px;
+}
+
+#div_id_remember {
+ float: left;
+ width: unset;
+}
+
+#remember_tip {
+ display: none;
+}
+
+#login-submit-wrapper {
+ float: right;
+}
+
+#login-form {
+ margin-top: 20px;
+}
+
+#login-extra-links, #login-form {
+ /* width: 341px; */
+ width: 341px;
+ clear: both;
+ border-top: 3px solid white;
+ padding-top: 20px;
+}
+
aside div #login-submit-button {
margin-left:0px;
}
+#login-lost-password-link {
+ margin-bottom: 10px;
+ float: right;
+}
+
aside #register-link, aside #lost-password-link {
display: block;
}