diff --git a/boot.php b/boot.php
index b02ee01c7c..a9c2cf1f98 100644
--- a/boot.php
+++ b/boot.php
@@ -2156,6 +2156,7 @@ function clear_cache($basepath = "", $path = "") {
if ($cachetime == 0)
$cachetime = 86400;
+ if (is_writable($path)){
if ($dh = opendir($path)) {
while (($file = readdir($dh)) !== false) {
$fullpath = $path."/".$file;
@@ -2166,6 +2167,7 @@ function clear_cache($basepath = "", $path = "") {
}
closedir($dh);
}
+ }
}
function set_template_engine(&$a, $engine = 'internal') {
diff --git a/mod/admin.php b/mod/admin.php
index 3a3fe6632a..9215eed82e 100644
--- a/mod/admin.php
+++ b/mod/admin.php
@@ -239,6 +239,7 @@ function admin_page_site_post(&$a){
$sitename = ((x($_POST,'sitename')) ? notags(trim($_POST['sitename'])) : '');
$banner = ((x($_POST,'banner')) ? trim($_POST['banner']) : false);
+ $info = ((x($_POST,'info')) ? trim($_POST['info']) : false);
$language = ((x($_POST,'language')) ? notags(trim($_POST['language'])) : '');
$theme = ((x($_POST,'theme')) ? notags(trim($_POST['theme'])) : '');
$theme_mobile = ((x($_POST,'theme_mobile')) ? notags(trim($_POST['theme_mobile'])) : '');
@@ -284,6 +285,7 @@ function admin_page_site_post(&$a){
$ssl_policy = ((x($_POST,'ssl_policy')) ? intval($_POST['ssl_policy']) : 0);
$old_share = ((x($_POST,'old_share')) ? True : False);
$hide_help = ((x($_POST,'hide_help')) ? True : False);
+ $suppress_language = ((x($_POST,'suppress_language')) ? True : False);
$use_fulltext_engine = ((x($_POST,'use_fulltext_engine')) ? True : False);
$itemcache = ((x($_POST,'itemcache')) ? notags(trim($_POST['itemcache'])) : '');
$itemcache_duration = ((x($_POST,'itemcache_duration')) ? intval($_POST['itemcache_duration']) : 0);
@@ -345,6 +347,11 @@ function admin_page_site_post(&$a){
} else {
set_config('system','banner', $banner);
}
+ if ($info=="") {
+ del_config('config','info');
+ } else {
+ set_config('config','info',$info);
+ }
set_config('system','language', $language);
set_config('system','theme', $theme);
if ( $theme_mobile === '---' ) {
@@ -473,6 +480,8 @@ function admin_page_site(&$a) {
if($banner == false)
$banner = 'Friendica';
$banner = htmlspecialchars($banner);
+ $info = get_config('config','info');
+ $info = htmlspecialchars($info);
//echo "
"; var_dump($lang_choices); die("
");
@@ -504,6 +513,7 @@ function admin_page_site(&$a) {
// name, label, value, help string, extra data...
'$sitename' => array('sitename', t("Site name"), htmlentities($a->config['sitename'], ENT_QUOTES), 'UTF-8'),
'$banner' => array('banner', t("Banner/Logo"), $banner, ""),
+ '$info' => array('info',t('Additional Info'), $info, t('For public servers: you can add additional information here that will be listed at dir.friendica.com/siteinfo.')),
'$language' => array('language', t("System language"), get_config('system','language'), "", $lang_choices),
'$theme' => array('theme', t("System theme"), get_config('system','theme'), t("Default system theme - may be over-ridden by user profiles - change theme settings"), $theme_choices),
'$theme_mobile' => array('theme_mobile', t("Mobile system theme"), get_config('system','mobile-theme'), t("Theme for mobile devices"), $theme_choices_mobile),
@@ -548,6 +558,7 @@ function admin_page_site(&$a) {
'$maxloadavg' => array('maxloadavg', t("Maximum Load Average"), ((intval(get_config('system','maxloadavg')) > 0)?get_config('system','maxloadavg'):50), t("Maximum system load before delivery and poll processes are deferred - default 50.")),
'$use_fulltext_engine' => array('use_fulltext_engine', t("Use MySQL full text engine"), get_config('system','use_fulltext_engine'), t("Activates the full text engine. Speeds up search - but can only search for four and more characters.")),
+ '$suppress_language' => array('suppress_language', t("Suppress Language"), get_config('system','suppress_language'), t("Suppress language information in meta information about a posting.")),
'$itemcache' => array('itemcache', t("Path to item cache"), get_config('system','itemcache'), "The item caches buffers generated bbcode and external images."),
'$itemcache_duration' => array('itemcache_duration', t("Cache duration in seconds"), get_config('system','itemcache_duration'), t("How long should the cache files be hold? Default value is 86400 seconds (One day).")),
'$lockpath' => array('lockpath', t("Path for lock file"), get_config('system','lockpath'), "The lock file is used to avoid multiple pollers at one time. Only define a folder here."),
diff --git a/view/templates/admin_site.tpl b/view/templates/admin_site.tpl
index bc7ed79377..68ba5b32ce 100644
--- a/view/templates/admin_site.tpl
+++ b/view/templates/admin_site.tpl
@@ -51,6 +51,7 @@
{{include file="field_input.tpl" field=$sitename}}
{{include file="field_textarea.tpl" field=$banner}}
+ {{include file="field_textarea.tpl" field=$info}}
{{include file="field_select.tpl" field=$language}}
{{include file="field_select.tpl" field=$theme}}
{{include file="field_select.tpl" field=$theme_mobile}}
@@ -108,6 +109,7 @@
{{include file="field_input.tpl" field=$lockpath}}
{{include file="field_input.tpl" field=$temppath}}
{{include file="field_input.tpl" field=$basepath}}
+ {{include file="field_checkbox.tpl" field=$suppress_language}}
{{$performance}}
{{include file="field_checkbox.tpl" field=$use_fulltext_engine}}
diff --git a/view/theme/quattro/dark/style.css b/view/theme/quattro/dark/style.css
index 02d18d2375..e72e557038 100644
--- a/view/theme/quattro/dark/style.css
+++ b/view/theme/quattro/dark/style.css
@@ -19,6 +19,12 @@
.icon.notify {
background-image: url("../../../images/icons/22/notify_off.png");
}
+.icon.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.gear {
background-image: url("../../../images/icons/22/gear.png");
}
@@ -83,6 +89,12 @@
.icon.s10.notify {
background-image: url("../../../images/icons/10/notify_off.png");
}
+.icon.s10.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.s10.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.s10.gear {
background-image: url("../../../images/icons/10/gear.png");
}
@@ -147,6 +159,12 @@
.icon.s16.notify {
background-image: url("../../../images/icons/16/notify_off.png");
}
+.icon.s16.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.s16.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.s16.gear {
background-image: url("../../../images/icons/16/gear.png");
}
@@ -211,6 +229,12 @@
.icon.s22.notify {
background-image: url("../../../images/icons/22/notify_off.png");
}
+.icon.s22.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.s22.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.s22.gear {
background-image: url("../../../images/icons/22/gear.png");
}
@@ -275,6 +299,12 @@
.icon.s48.notify {
background-image: url("../../../images/icons/48/notify_off.png");
}
+.icon.s48.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.s48.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.s48.gear {
background-image: url("../../../images/icons/48/gear.png");
}
@@ -589,6 +619,14 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,
nav #nav-notifications-linkmenu.selected .icon.s22.notify {
background-image: url("../../../images/icons/22/notify_on.png");
}
+nav #nav-introductions-link.on .icon.s22.intro,
+nav #nav-introductions-link.selected .icon.s22.intro {
+ background-image: url("icons/contacts_on.png");
+}
+nav #nav-messages-link.on .icon.s22.mail,
+nav #nav-messages-link.selected .icon.s22.mail {
+ background-image: url("icons/messages_on.png");
+}
nav #nav-apps-link.selected {
background-color: #364e59;
}
diff --git a/view/theme/quattro/green/style.css b/view/theme/quattro/green/style.css
index 1f1d85e806..8e6a020b8a 100644
--- a/view/theme/quattro/green/style.css
+++ b/view/theme/quattro/green/style.css
@@ -19,6 +19,12 @@
.icon.notify {
background-image: url("../../../images/icons/22/notify_off.png");
}
+.icon.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.gear {
background-image: url("../../../images/icons/22/gear.png");
}
@@ -83,6 +89,12 @@
.icon.s10.notify {
background-image: url("../../../images/icons/10/notify_off.png");
}
+.icon.s10.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.s10.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.s10.gear {
background-image: url("../../../images/icons/10/gear.png");
}
@@ -147,6 +159,12 @@
.icon.s16.notify {
background-image: url("../../../images/icons/16/notify_off.png");
}
+.icon.s16.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.s16.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.s16.gear {
background-image: url("../../../images/icons/16/gear.png");
}
@@ -211,6 +229,12 @@
.icon.s22.notify {
background-image: url("../../../images/icons/22/notify_off.png");
}
+.icon.s22.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.s22.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.s22.gear {
background-image: url("../../../images/icons/22/gear.png");
}
@@ -275,6 +299,12 @@
.icon.s48.notify {
background-image: url("../../../images/icons/48/notify_off.png");
}
+.icon.s48.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.s48.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.s48.gear {
background-image: url("../../../images/icons/48/gear.png");
}
@@ -589,6 +619,14 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,
nav #nav-notifications-linkmenu.selected .icon.s22.notify {
background-image: url("../../../images/icons/22/notify_on.png");
}
+nav #nav-introductions-link.on .icon.s22.intro,
+nav #nav-introductions-link.selected .icon.s22.intro {
+ background-image: url("icons/contacts_on.png");
+}
+nav #nav-messages-link.on .icon.s22.mail,
+nav #nav-messages-link.selected .icon.s22.mail {
+ background-image: url("icons/messages_on.png");
+}
nav #nav-apps-link.selected {
background-color: #364e59;
}
diff --git a/view/theme/quattro/icons.less b/view/theme/quattro/icons.less
index f9be4cc723..13a2b49bba 100644
--- a/view/theme/quattro/icons.less
+++ b/view/theme/quattro/icons.less
@@ -3,6 +3,8 @@
.icons(@size: 22) {
&.notify { background-image: url("../../../images/icons/@{size}/notify_off.png"); }
+ &.intro { background-image: url("icons/contacts_off.png"); }
+ &.mail { background-image: url("icons/messages_off.png"); }
&.gear { background-image: url("../../../images/icons/@{size}/gear.png"); }
&.like { background-image: url("icons/like.png"); }
diff --git a/view/theme/quattro/icons/contacts3.png b/view/theme/quattro/icons/contacts3.png
new file mode 100644
index 0000000000..8a3e69ec1f
Binary files /dev/null and b/view/theme/quattro/icons/contacts3.png differ
diff --git a/view/theme/quattro/icons/contacts_off.png b/view/theme/quattro/icons/contacts_off.png
new file mode 100644
index 0000000000..4345d473af
Binary files /dev/null and b/view/theme/quattro/icons/contacts_off.png differ
diff --git a/view/theme/quattro/icons/contacts_on.png b/view/theme/quattro/icons/contacts_on.png
new file mode 100644
index 0000000000..e7f2a3983d
Binary files /dev/null and b/view/theme/quattro/icons/contacts_on.png differ
diff --git a/view/theme/quattro/icons/messages_off.png b/view/theme/quattro/icons/messages_off.png
new file mode 100644
index 0000000000..70ab1c7516
Binary files /dev/null and b/view/theme/quattro/icons/messages_off.png differ
diff --git a/view/theme/quattro/icons/messages_on.png b/view/theme/quattro/icons/messages_on.png
new file mode 100644
index 0000000000..f831813c92
Binary files /dev/null and b/view/theme/quattro/icons/messages_on.png differ
diff --git a/view/theme/quattro/lilac/style.css b/view/theme/quattro/lilac/style.css
index 2dce3ee1a3..d35ad52ed0 100644
--- a/view/theme/quattro/lilac/style.css
+++ b/view/theme/quattro/lilac/style.css
@@ -19,6 +19,12 @@
.icon.notify {
background-image: url("../../../images/icons/22/notify_off.png");
}
+.icon.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.gear {
background-image: url("../../../images/icons/22/gear.png");
}
@@ -83,6 +89,12 @@
.icon.s10.notify {
background-image: url("../../../images/icons/10/notify_off.png");
}
+.icon.s10.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.s10.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.s10.gear {
background-image: url("../../../images/icons/10/gear.png");
}
@@ -147,6 +159,12 @@
.icon.s16.notify {
background-image: url("../../../images/icons/16/notify_off.png");
}
+.icon.s16.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.s16.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.s16.gear {
background-image: url("../../../images/icons/16/gear.png");
}
@@ -211,6 +229,12 @@
.icon.s22.notify {
background-image: url("../../../images/icons/22/notify_off.png");
}
+.icon.s22.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.s22.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.s22.gear {
background-image: url("../../../images/icons/22/gear.png");
}
@@ -275,6 +299,12 @@
.icon.s48.notify {
background-image: url("../../../images/icons/48/notify_off.png");
}
+.icon.s48.intro {
+ background-image: url("icons/contacts_off.png");
+}
+.icon.s48.mail {
+ background-image: url("icons/messages_off.png");
+}
.icon.s48.gear {
background-image: url("../../../images/icons/48/gear.png");
}
@@ -589,6 +619,14 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,
nav #nav-notifications-linkmenu.selected .icon.s22.notify {
background-image: url("../../../images/icons/22/notify_on.png");
}
+nav #nav-introductions-link.on .icon.s22.intro,
+nav #nav-introductions-link.selected .icon.s22.intro {
+ background-image: url("icons/contacts_on.png");
+}
+nav #nav-messages-link.on .icon.s22.mail,
+nav #nav-messages-link.selected .icon.s22.mail {
+ background-image: url("icons/messages_on.png");
+}
nav #nav-apps-link.selected {
background-color: #cbd38d;
}
diff --git a/view/theme/quattro/quattro.less b/view/theme/quattro/quattro.less
index f13ae90647..6287a05ef8 100644
--- a/view/theme/quattro/quattro.less
+++ b/view/theme/quattro/quattro.less
@@ -215,7 +215,11 @@ nav {
}
#nav-notifications-linkmenu.on .icon.s22.notify,
- #nav-notifications-linkmenu.selected .icon.s22.notify { background-image: url("../../../images/icons/22/notify_on.png") }
+ #nav-notifications-linkmenu.selected .icon.s22.notify { background-image: url("../../../images/icons/22/notify_on.png") }
+ #nav-introductions-link.on .icon.s22.intro,
+ #nav-introductions-link.selected .icon.s22.intro { background-image: url("icons/contacts_on.png") }
+ #nav-messages-link.on .icon.s22.mail,
+ #nav-messages-link.selected .icon.s22.mail { background-image: url("icons/messages_on.png") }
#nav-apps-link.selected { background-color: @NavbarSelectedBg; }
}
diff --git a/view/theme/quattro/templates/nav.tpl b/view/theme/quattro/templates/nav.tpl
index 2118c1e348..2c646306ad 100644
--- a/view/theme/quattro/templates/nav.tpl
+++ b/view/theme/quattro/templates/nav.tpl
@@ -1,8 +1,3 @@
-{{*
- * AUTOMATICALLY GENERATED TEMPLATE
- * DO NOT EDIT THIS FILE, CHANGES WILL BE OVERWRITTEN
- *
- *}}
{{* {{$langselector}} *}}
@@ -44,6 +39,26 @@
{{/if}}
+ {{if $nav.introductions}}
+
+ {{/if}}
+
+ {{if $nav.messages}}
+
+ {{/if}}
+
+
+
{{if $nav.notifications}}