aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorzottel <github@zottel.net>2012-05-30 11:08:02 +0200
committerzottel <github@zottel.net>2012-05-30 11:08:02 +0200
commit24b58af68938558baa2ddc6809401ec528ff1176 (patch)
tree4347cab04767aafe7b5567d68539e666284fa3cc
parent36d6018c110fca190b720c5ff27883c2d4ed70c3 (diff)
parent88a0d6a1d53a93fa0d43591f85b72a8a72c13d53 (diff)
downloadvolse-hubzilla-24b58af68938558baa2ddc6809401ec528ff1176.tar.gz
volse-hubzilla-24b58af68938558baa2ddc6809401ec528ff1176.tar.bz2
volse-hubzilla-24b58af68938558baa2ddc6809401ec528ff1176.zip
Merge remote branch 'upstream/master'
-rw-r--r--boot.php31
-rw-r--r--database.sql1
-rw-r--r--htconfig.php3
-rw-r--r--include/api.php113
-rw-r--r--include/auth.php2
-rw-r--r--include/bb2diaspora.php7
-rw-r--r--include/config.php26
-rw-r--r--include/dba.php22
-rw-r--r--include/delivery.php2
-rw-r--r--include/enotify.php2
-rw-r--r--include/event.php17
-rw-r--r--include/items.php107
-rw-r--r--include/nav.php2
-rw-r--r--include/notifier.php2
-rw-r--r--include/profile_advanced.php4
-rw-r--r--include/profile_selectors.php7
-rw-r--r--mod/dfrn_confirm.php11
-rw-r--r--mod/dfrn_notify.php10
-rw-r--r--mod/dfrn_request.php16
-rw-r--r--mod/item.php41
-rw-r--r--mod/network.php41
-rw-r--r--mod/notes.php6
-rw-r--r--mod/profiles.php11
-rw-r--r--mod/search.php18
-rw-r--r--mod/settings.php12
-rw-r--r--mod/wallmessage.php4
-rw-r--r--update.php10
-rw-r--r--util/messages.po725
-rw-r--r--view/dfrn_req_confirm.tpl4
-rw-r--r--view/generic_links_widget.tpl2
-rw-r--r--view/settings.tpl1
-rwxr-xr-xview/theme/diabook/theme.php5
-rw-r--r--view/theme/dispy/communityhome.tpl40
-rw-r--r--view/theme/dispy/config.php16
-rw-r--r--view/theme/dispy/conversation.tpl3
-rw-r--r--view/theme/dispy/dark/_base.less21
-rw-r--r--view/theme/dispy/dark/style.css24
-rw-r--r--view/theme/dispy/dark/style.less39
-rw-r--r--view/theme/dispy/dark/theme.php2
-rw-r--r--view/theme/dispy/light/_base.less20
-rw-r--r--view/theme/dispy/light/style.css22
-rw-r--r--view/theme/dispy/light/style.less39
-rw-r--r--view/theme/dispy/light/theme.php2
-rw-r--r--view/theme/dispy/style.php302
-rw-r--r--view/theme/dispy/theme.php2
-rw-r--r--view/theme/duepuntozero/style.css19
-rw-r--r--view/theme/slackr/style.css18
47 files changed, 995 insertions, 839 deletions
diff --git a/boot.php b/boot.php
index 634cf28c9..54ab14d63 100644
--- a/boot.php
+++ b/boot.php
@@ -9,9 +9,9 @@ require_once('include/nav.php');
require_once('include/cache.php');
define ( 'FRIENDICA_PLATFORM', 'Friendica');
-define ( 'FRIENDICA_VERSION', '3.0.1353' );
+define ( 'FRIENDICA_VERSION', '3.0.1358' );
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
-define ( 'DB_UPDATE_VERSION', 1144 );
+define ( 'DB_UPDATE_VERSION', 1145 );
define ( 'EOL', "<br />\r\n" );
define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' );
@@ -441,22 +441,19 @@ if(! class_exists('App')) {
if(intval($this->config['system']['ssl_policy']) === intval(SSL_POLICY_FULL))
$scheme = 'https';
- // We need to populate the $ssl flag across the entire program before turning this on.
- // Basically, we'll have $ssl = true on any links which can only be seen by a logged in user
- // (and also the login link). Anything seen by an outsider will have it turned off.
- // At present, setting SSL_POLICY_SELFSIGN will only force remote contacts to update their
- // contact links to this site with "http:" if they are currently using "https:"
-
- // if($this->config['system']['ssl_policy'] == SSL_POLICY_SELFSIGN) {
- // if($ssl)
- // $scheme = 'https';
- // else
- // $scheme = 'http';
- // }
- }
+ // Basically, we have $ssl = true on any links which can only be seen by a logged in user
+ // (and also the login link). Anything seen by an outsider will have it turned off.
+
+ if($this->config['system']['ssl_policy'] == SSL_POLICY_SELFSIGN) {
+ if($ssl)
+ $scheme = 'https';
+ else
+ $scheme = 'http';
+ }
+ }
- $this->baseurl = $scheme . "://" . $this->hostname . ((isset($this->path) && strlen($this->path)) ? '/' . $this->path : '' );
- return $this->baseurl;
+ $this->baseurl = $scheme . "://" . $this->hostname . ((isset($this->path) && strlen($this->path)) ? '/' . $this->path : '' );
+ return $this->baseurl;
}
function set_baseurl($url) {
diff --git a/database.sql b/database.sql
index ed97cd4aa..48900839c 100644
--- a/database.sql
+++ b/database.sql
@@ -173,6 +173,7 @@ CREATE TABLE IF NOT EXISTS `contact` (
`readonly` tinyint(1) NOT NULL DEFAULT '0',
`writable` tinyint(1) NOT NULL DEFAULT '0',
`forum` tinyint(1) NOT NULL DEFAULT '0',
+ `prv` tinyint(1) NOT NULL DEFAULT '0',
`hidden` tinyint(1) NOT NULL DEFAULT '0',
`archive` tinyint(1) NOT NULL DEFAULT '0',
`pending` tinyint(1) NOT NULL DEFAULT '1',
diff --git a/htconfig.php b/htconfig.php
index 872572654..de7674c9a 100644
--- a/htconfig.php
+++ b/htconfig.php
@@ -88,3 +88,6 @@ $a->config['system']['itemcache'] = "";
// If enabled, the lockpath is used for a lockfile to check if the poller is running
$a->config['system']['lockpath'] = "";
+
+// If enabled, the MyBB fulltext engine is used
+// $a->config['system']['use_fulltext_engine'] = true;
diff --git a/include/api.php b/include/api.php
index a693a32c8..5c17b35f5 100644
--- a/include/api.php
+++ b/include/api.php
@@ -4,26 +4,26 @@
require_once("conversation.php");
require_once("oauth.php");
require_once("html2plain.php");
- /*
+ /*
* Twitter-Like API
- *
+ *
*/
$API = Array();
- $called_api = Null;
+ $called_api = Null;
function api_date($str){
//Wed May 23 06:01:13 +0000 2007
return datetime_convert('UTC', 'UTC', $str, "D M d H:i:s +0000 Y" );
}
-
-
+
+
function api_register_func($path, $func, $auth=false){
global $API;
$API[$path] = array('func'=>$func,
'auth'=>$auth);
}
-
+
/**
* Simple HTTP Login
*/
@@ -691,24 +691,24 @@
'geo' => '',
'coordinates' => $lastwall['coord'],
'place' => $lastwall['location'],
- 'contributors' => ''
+ 'contributors' => ''
);
}
return api_apply_template("user", $type, array('$user' => $user_info));
-
+
}
api_register_func('api/users/show','api_users_show');
-
+
/**
- *
+ *
* http://developer.twitter.com/doc/get/statuses/home_timeline
- *
+ *
* TODO: Optional parameters
* TODO: Add reply info
*/
function api_statuses_home_timeline(&$a, $type){
if (local_user()===false) return false;
-
+
$user_info = api_get_user($a);
// get last newtork messages
@@ -720,7 +720,7 @@
$since_id = (x($_REQUEST,'since_id')?$_REQUEST['since_id']:0);
$max_id = (x($_REQUEST,'max_id')?$_REQUEST['max_id']:0);
//$since_id = 0;//$since_id = (x($_REQUEST,'since_id')?$_REQUEST['since_id']:0);
-
+
$start = $page*$count;
//$include_entities = (x($_REQUEST,'include_entities')?$_REQUEST['include_entities']:false);
@@ -728,7 +728,7 @@
if ($max_id > 0)
$sql_extra = 'AND `item`.`id` <= '.intval($max_id);
- $r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
+ $r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
`contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`rel`,
`contact`.`network`, `contact`.`thumb`, `contact`.`dfrn-id`, `contact`.`self`,
`contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid`
@@ -747,7 +747,7 @@
$ret = api_format_items($r,$user_info);
-
+
$data = array('$statuses' => $ret);
switch($type){
case "atom":
@@ -761,7 +761,7 @@
return($as);
break;
}
-
+
return api_apply_template("timeline", $type, $data);
}
api_register_func('api/statuses/home_timeline','api_statuses_home_timeline', true);
@@ -769,7 +769,7 @@
function api_statuses_public_timeline(&$a, $type){
if (local_user()===false) return false;
-
+
$user_info = api_get_user($a);
// get last newtork messages
@@ -781,7 +781,7 @@
$since_id = (x($_REQUEST,'since_id')?$_REQUEST['since_id']:0);
$max_id = (x($_REQUEST,'max_id')?$_REQUEST['max_id']:0);
//$since_id = 0;//$since_id = (x($_REQUEST,'since_id')?$_REQUEST['since_id']:0);
-
+
$start = $page*$count;
//$include_entities = (x($_REQUEST,'include_entities')?$_REQUEST['include_entities']:false);
@@ -789,7 +789,7 @@
if ($max_id > 0)
$sql_extra = 'AND `item`.`id` <= '.intval($max_id);
- /*$r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
+ /*$r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
`contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`rel`,
`contact`.`network`, `contact`.`thumb`, `contact`.`dfrn-id`, `contact`.`self`,
`contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid`
@@ -806,17 +806,17 @@
intval($since_id),
intval($start), intval($count)
);*/
- $r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
+ $r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
`contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`rel`,
- `contact`.`network`, `contact`.`thumb`, `contact`.`self`, `contact`.`writable`,
+ `contact`.`network`, `contact`.`thumb`, `contact`.`self`, `contact`.`writable`,
`contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid`,
`user`.`nickname`, `user`.`hidewall`
FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
LEFT JOIN `user` ON `user`.`uid` = `item`.`uid`
WHERE `item`.`visible` = 1 AND `item`.`deleted` = 0 and `item`.`moderated` = 0
- AND `item`.`allow_cid` = '' AND `item`.`allow_gid` = ''
- AND `item`.`deny_cid` = '' AND `item`.`deny_gid` = ''
- AND `item`.`private` = 0 AND `item`.`wall` = 1 AND `user`.`hidewall` = 0
+ AND `item`.`allow_cid` = '' AND `item`.`allow_gid` = ''
+ AND `item`.`deny_cid` = '' AND `item`.`deny_gid` = ''
+ AND `item`.`private` = 0 AND `item`.`wall` = 1 AND `user`.`hidewall` = 0
AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0
$sql_extra
AND `item`.`id`>%d
@@ -827,7 +827,7 @@
$ret = api_format_items($r,$user_info);
-
+
$data = array('$statuses' => $ret);
switch($type){
case "atom":
@@ -841,7 +841,7 @@
return($as);
break;
}
-
+
return api_apply_template("timeline", $type, $data);
}
api_register_func('api/statuses/public_timeline','api_statuses_public_timeline', true);
@@ -857,11 +857,11 @@
// params
$id = intval($a->argv[3]);
- logger('API: api_statuses_show: '.$id);
+ logger('API: api_statuses_show: '.$id);
//$include_entities = (x($_REQUEST,'include_entities')?$_REQUEST['include_entities']:false);
- $r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
+ $r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
`contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`rel`,
`contact`.`network`, `contact`.`thumb`, `contact`.`dfrn-id`, `contact`.`self`,
`contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid`
@@ -875,7 +875,7 @@
);
$ret = api_format_items($r,$user_info);
-
+
$data = array('$status' => $ret[0]);
/*switch($type){
case "atom":
@@ -976,7 +976,7 @@
$since_id = (x($_REQUEST,'since_id')?$_REQUEST['since_id']:0);
$max_id = (x($_REQUEST,'max_id')?$_REQUEST['max_id']:0);
//$since_id = 0;//$since_id = (x($_REQUEST,'since_id')?$_REQUEST['since_id']:0);
-
+
$start = $page*$count;
//$include_entities = (x($_REQUEST,'include_entities')?$_REQUEST['include_entities']:false);
@@ -985,11 +985,19 @@
$myurl = substr($myurl,strpos($myurl,'://')+3);
$myurl = str_replace(array('www.','.'),array('','\\.'),$myurl);
$diasp_url = str_replace('/profile/','/u/',$myurl);
- $sql_extra .= sprintf(" AND `item`.`parent` IN (SELECT distinct(`parent`) from item where ( `author-link` regexp '%s' or `tag` regexp '%s' or tag regexp '%s' )) ",
- dbesc($myurl . '$'),
- dbesc($myurl . '\\]'),
- dbesc($diasp_url . '\\]')
- );
+
+ if (get_config('system','use_fulltext_engine'))
+ $sql_extra .= sprintf(" AND `item`.`parent` IN (SELECT distinct(`parent`) from item where (MATCH(`author-link`) AGAINST ('".'"%s"'."' in boolean mode) or MATCH(`tag`) AGAINST ('".'"%s"'."' in boolean mode) or MATCH(tag) AGAINST ('".'"%s"'."' in boolean mode))) ",
+ dbesc(protect_sprintf($myurl)),
+ dbesc(protect_sprintf($myurl)),
+ dbesc(protect_sprintf($diasp_url))
+ );
+ else
+ $sql_extra .= sprintf(" AND `item`.`parent` IN (SELECT distinct(`parent`) from item where ( `author-link` like '%s' or `tag` like '%s' or tag like '%s' )) ",
+ dbesc(protect_sprintf('%' . $myurl)),
+ dbesc(protect_sprintf('%' . $myurl . ']%')),
+ dbesc(protect_sprintf('%' . $diasp_url . ']%'))
+ );
if ($max_id > 0)
$sql_extra .= ' AND `item`.`id` <= '.intval($max_id);
@@ -1013,7 +1021,7 @@
$ret = api_format_items($r,$user_info);
-
+
$data = array('$statuses' => $ret);
switch($type){
case "atom":
@@ -1027,7 +1035,7 @@
return($as);
break;
}
-
+
return api_apply_template("timeline", $type, $data);
}
api_register_func('api/statuses/mentions','api_statuses_mentions', true);
@@ -1078,14 +1086,14 @@
$ret = api_format_items($r,$user_info);
-
+
$data = array('$statuses' => $ret);
switch($type){
case "atom":
case "rss":
$data = api_rss_extra($a, $data, $user_info);
}
-
+
return api_apply_template("timeline", $type, $data);
}
@@ -1094,25 +1102,25 @@
function api_favorites(&$a, $type){
if (local_user()===false) return false;
-
+
$user_info = api_get_user($a);
// in friendica starred item are private
// return favorites only for self
logger('api_favorites: self:' . $user_info['self']);
-
+
if ($user_info['self']==0) {
$ret = array();
} else {
-
-
+
+
// params
$count = (x($_GET,'count')?$_GET['count']:20);
$page = (x($_REQUEST,'page')?$_REQUEST['page']-1:0);
if ($page<0) $page=0;
-
+
$start = $page*$count;
- $r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
+ $r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
`contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`rel`,
`contact`.`network`, `contact`.`thumb`, `contact`.`dfrn-id`, `contact`.`self`,
`contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid`
@@ -1129,16 +1137,16 @@
);
$ret = api_format_items($r,$user_info);
-
+
}
-
+
$data = array('$statuses' => $ret);
switch($type){
case "atom":
case "rss":
$data = api_rss_extra($a, $data, $user_info);
}
-
+
return api_apply_template("timeline", $type, $data);
}
@@ -1208,7 +1216,7 @@
$as['link']['type'] = "text/html";
return($as);
}
-
+
function api_format_items($r,$user_info) {
//logger('api_format_items: ' . print_r($r,true));
@@ -1223,14 +1231,14 @@
$status_user = (($item['cid']==$user_info['id'])?$user_info: api_item_get_user($a,$item));
if ($item['parent']!=$item['id']) {
- $r = q("select id from item where parent=%s and id<%s order by id desc limit 1",
+ $r = q("select id from item where parent=%s and id<%s order by id desc limit 1",
intval($item['parent']), intval($item['id']));
if ($r)
$in_reply_to_status_id = $r[0]['id'];
else
$in_reply_to_status_id = $item['parent'];
- $r = q("select `item`.`contact-id`, `contact`.nick, `item`.`author-name` from item, contact
+ $r = q("select `item`.`contact-id`, `contact`.nick, `item`.`author-name` from item, contact
where `contact`.`id` = `item`.`contact-id` and `item`.id=%d", intval($in_reply_to_status_id));
$in_reply_to_screen_name = $r[0]['author-name'];
@@ -1251,6 +1259,9 @@
else
$statustext = trim($statustitle."\n\n".$statusbody);
+ if (($item["network"] == NETWORK_FEED) and (strlen($statustext)> 1000))
+ $statustext = substr($statustext, 0, 1000)."... \n".$item["plink"];
+
$status = array(
'text' => $statustext,
'truncated' => False,
diff --git a/include/auth.php b/include/auth.php
index b87662fea..cba6a67a7 100644
--- a/include/auth.php
+++ b/include/auth.php
@@ -53,6 +53,8 @@ if((isset($_SESSION)) && (x($_SESSION,'authenticated')) && ((! (x($_POST,'auth-p
$check = get_config('system','paranoia');
// extra paranoia - if the IP changed, log them out
if($check && ($_SESSION['addr'] != $_SERVER['REMOTE_ADDR'])) {
+ logger('Session address changed. Paranoid setting in effect, blocking session. '
+ . $_SESSION['addr'] . ' != ' . $_SERVER['REMOTE_ADDR']);
nuke_session();
goaway(z_root());
}
diff --git a/include/bb2diaspora.php b/include/bb2diaspora.php
index 8487f845a..d86ba4543 100644
--- a/include/bb2diaspora.php
+++ b/include/bb2diaspora.php
@@ -221,13 +221,18 @@ function bb2diaspora($Text,$preserve_nl = false) {
$Text = preg_replace("/\<(.*?)(src|href)=(.*?)\&amp\;(.*?)\>/ism",'<$1$2=$3&$4>',$Text);
- $Text = preg_replace('/\[(.*?)\]\((.*?)\\\\_(.*?)\)/ism','[$1]($2_$3)',$Text);
+ $Text = preg_replace_callback('/\[(.*?)\]\((.*?)\)/ism','unescape_underscores_in_links',$Text);
call_hooks('bb2diaspora',$Text);
return $Text;
}
+function unescape_underscores_in_links($m) {
+ $y = str_replace('\\_','_', $m[2]);
+ return('[' . $m[1] . '](' . $y . ')');
+}
+
function format_event_diaspora($ev) {
$a = get_app();
diff --git a/include/config.php b/include/config.php
index 12fc9cafc..df1070c13 100644
--- a/include/config.php
+++ b/include/config.php
@@ -6,7 +6,7 @@
* Note:
* Please do not store booleans - convert to 0/1 integer values
* The get_?config() functions return boolean false for keys that are unset,
- * and this could lead to subtle bugs.
+ * and this could lead to subtle bugs.
*
* There are a few places in the code (such as the admin panel) where boolean
* configurations need to be fixed as of 10/08/2011.
@@ -30,6 +30,9 @@ function load_config($family) {
$a->config[$family][$k] = $rr['v'];
}
}
+ } else if ($rr['cat'] != 'config') {
+ // Negative caching
+ $a->config[$family] = "!<unset>!";
}
}}
@@ -47,6 +50,13 @@ function get_config($family, $key, $instore = false) {
global $a;
if(! $instore) {
+ // Looking if the whole family isn't set
+ if(isset($a->config[$family])) {
+ if($a->config[$family] === '!<unset>!') {
+ return false;
+ }
+ }
+
if(isset($a->config[$family][$key])) {
if($a->config[$family][$key] === '!<unset>!') {
return false;
@@ -87,11 +97,11 @@ function set_config($family,$key,$value) {
dbesc($key),
dbesc($dbvalue)
);
- if($ret)
+ if($ret)
return $value;
return $ret;
}
-
+
$ret = q("UPDATE `config` SET `v` = '%s' WHERE `cat` = '%s' AND `k` = '%s' LIMIT 1",
dbesc($dbvalue),
dbesc($family),
@@ -118,6 +128,9 @@ function load_pconfig($uid,$family) {
$k = $rr['k'];
$a->config[$uid][$family][$k] = $rr['v'];
}
+ } else if ($rr['cat'] != 'config') {
+ // Negative caching
+ $a->config[$uid][$family] = "!<unset>!";
}
}}
@@ -129,6 +142,13 @@ function get_pconfig($uid,$family, $key, $instore = false) {
global $a;
if(! $instore) {
+ // Looking if the whole family isn't set
+ if(isset($a->config[$uid][$family])) {
+ if($a->config[$uid][$family] === '!<unset>!') {
+ return false;
+ }
+ }
+
if(isset($a->config[$uid][$family][$key])) {
if($a->config[$uid][$family][$key] === '!<unset>!') {
return false;
diff --git a/include/dba.php b/include/dba.php
index c9f880241..881097f30 100644
--- a/include/dba.php
+++ b/include/dba.php
@@ -32,9 +32,9 @@ class dba {
if (!(strlen($server) && strlen($user))){
$this->connected = false;
$this->db = null;
- return;
+ return;
}
-
+
if($install) {
if(strlen($server) && ($server !== 'localhost') && ($server !== '127.0.0.1')) {
if(! dns_get_record($server, DNS_A + DNS_CNAME + DNS_PTR)) {
@@ -71,23 +71,29 @@ class dba {
}
public function q($sql) {
-
+
if((! $this->db) || (! $this->connected))
return false;
-
+
$this->error = '';
+ //if (get_config("system", "db_log") != "")
+ // @file_put_contents(get_config("system", "db_log"), datetime_convert().':'.session_id(). ' Start '.$sql."\n", FILE_APPEND);
+
if($this->mysqli)
$result = @$this->db->query($sql);
else
$result = @mysql_query($sql,$this->db);
+ //if (get_config("system", "db_log") != "")
+ // @file_put_contents(get_config("system", "db_log"), datetime_convert().':'.session_id(). ' Stop '."\n", FILE_APPEND);
+
if($this->mysqli) {
if($this->db->errno)
$this->error = $this->db->error;
}
elseif(mysql_errno($this->db))
- $this->error = mysql_error($this->db);
+ $this->error = mysql_error($this->db);
if(strlen($this->error)) {
logger('dba: ' . $this->error);
@@ -107,8 +113,8 @@ class dba {
else
$mesg = mysql_num_rows($result) . ' results' . EOL;
}
-
- $str = 'SQL = ' . printable($sql) . EOL . 'SQL returned ' . $mesg
+
+ $str = 'SQL = ' . printable($sql) . EOL . 'SQL returned ' . $mesg
. (($this->error) ? ' error: ' . $this->error : '')
. EOL;
@@ -146,7 +152,7 @@ class dba {
}
}
-
+
if($this->debug)
logger('dba: ' . printable(print_r($r, true)));
return($r);
diff --git a/include/delivery.php b/include/delivery.php
index 61b0bd33a..32943d5da 100644
--- a/include/delivery.php
+++ b/include/delivery.php
@@ -288,7 +288,7 @@ function delivery_run($argv, $argc){
if($normal_mode) {
if($item_id == $item['id'] || $item['id'] == $item['parent'])
- $atom .= atom_entry($item,'text',null,$owner,true);
+ $atom .= atom_entry($item,'text',null,$owner,true,(($top_level) ? $contact['id'] : 0));
}
else
$atom .= atom_entry($item,'text',null,$owner,true);
diff --git a/include/enotify.php b/include/enotify.php
index ca134ac86..f7ef74fac 100644
--- a/include/enotify.php
+++ b/include/enotify.php
@@ -13,7 +13,7 @@ function notification($params) {
$banner = t('Friendica Notification');
$product = FRIENDICA_PLATFORM;
- $siteurl = z_path();
+ $siteurl = $a->get_baseurl(true);
$thanks = t('Thank You,');
$sitename = get_config('config','sitename');
$site_admin = sprintf( t('%s Administrator'), $sitename);
diff --git a/include/event.php b/include/event.php
index 29202badd..866ae8c3f 100644
--- a/include/event.php
+++ b/include/event.php
@@ -42,7 +42,7 @@ function format_event_html($ev) {
return $o;
}
-
+/*
function parse_event($h) {
require_once('include/Scrape.php');
@@ -108,7 +108,7 @@ function parse_event($h) {
return $ret;
}
-
+*/
function format_event_bbcode($ev) {
@@ -162,7 +162,6 @@ function bbtoevent($s) {
$match = '';
if(preg_match("/\[event\-adjust\](.*?)\[\/event\-adjust\]/is",$s,$match))
$ev['adjust'] = $match[1];
- $match = '';
$ev['nofinish'] = (((x($ev, 'start') && $ev['start']) && (!x($ev, 'finish') || !$ev['finish'])) ? 1 : 0);
return $ev;
@@ -294,10 +293,14 @@ function event_store($arr) {
intval($arr['uid'])
);
- return $r[0]['id'];
+ $item_id = $r[0]['id'];
}
else
- return 0;
+ $item_id = 0;
+
+ call_hooks("event_updated", $arr['id']);
+
+ return $item_id;
}
else {
@@ -361,7 +364,7 @@ function event_store($arr) {
$item_arr['body'] = format_event_bbcode($event);
- $item_arr['object'] = '<object><type>' . xmlify(ACTIVITY_OBJ_EVENT) . '</type><title></title><id>' . xmlify($uri) . '</id>';
+ $item_arr['object'] = '<object><type>' . xmlify(ACTIVITY_OBJ_EVENT) . '</type><title></title><id>' . xmlify($arr['uri']) . '</id>';
$item_arr['object'] .= '<content>' . xmlify(format_event_bbcode($event)) . '</content>';
$item_arr['object'] .= '</object>' . "\n";
@@ -383,6 +386,8 @@ function event_store($arr) {
);
}
+ call_hooks("event_created", $event['id']);
+
return $item_id;
}
}
diff --git a/include/items.php b/include/items.php
index e5b640fd2..c6d852fe7 100644
--- a/include/items.php
+++ b/include/items.php
@@ -1063,9 +1063,6 @@ function dfrn_deliver($owner,$contact,$atom, $dissolve = false) {
$a = get_app();
-// if((! strlen($contact['issued-id'])) && (! $contact['duplex']) && (! ($owner['page-flags'] == PAGE_COMMUNITY)))
-// return 3;
-
$idtosend = $orig_id = (($contact['dfrn-id']) ? $contact['dfrn-id'] : $contact['issued-id']);
if($contact['duplex'] && $contact['dfrn-id'])
@@ -1130,6 +1127,9 @@ function dfrn_deliver($owner,$contact,$atom, $dissolve = false) {
$rino_allowed = ((intval($res->rino) === 1) ? 1 : 0);
$page = (($owner['page-flags'] == PAGE_COMMUNITY) ? 1 : 0);
+ if($owner['page-flags'] == PAGE_PRVGROUP)
+ $page = 2;
+
$final_dfrn_id = '';
if($perm) {
@@ -1183,7 +1183,7 @@ function dfrn_deliver($owner,$contact,$atom, $dissolve = false) {
$postvars['ssl_policy'] = $ssl_policy;
if($page)
- $postvars['page'] = '1';
+ $postvars['page'] = $page;
if($rino && $rino_allowed && (! $dissolve)) {
$key = substr(random_string(),0,16);
@@ -2832,7 +2832,7 @@ function atom_author($tag,$name,$uri,$h,$w,$photo) {
return $o;
}
-function atom_entry($item,$type,$author,$owner,$comment = false) {
+function atom_entry($item,$type,$author,$owner,$comment = false,$cid = 0) {
$a = get_app();
@@ -2844,7 +2844,7 @@ function atom_entry($item,$type,$author,$owner,$comment = false) {
if($item['allow_cid'] || $item['allow_gid'] || $item['deny_cid'] || $item['deny_gid'])
- $body = fix_private_photos($item['body'],$owner['uid']);
+ $body = fix_private_photos($item['body'],$owner['uid'],$item,$cid);
else
$body = $item['body'];
@@ -2927,14 +2927,17 @@ function atom_entry($item,$type,$author,$owner,$comment = false) {
return $o;
}
-function fix_private_photos($s,$uid) {
+function fix_private_photos($s,$uid, $item = null, $cid = 0) {
$a = get_app();
- logger('fix_private_photos');
+
+ logger('fix_private_photos', LOGGER_DEBUG);
+ $site = substr($a->get_baseurl(),strpos($a->get_baseurl(),'://'));
if(preg_match("/\[img\](.*?)\[\/img\]/is",$s,$matches)) {
$image = $matches[1];
- logger('fix_private_photos: found photo ' . $image);
- if(stristr($image ,$a->get_baseurl() . '/photo/')) {
+ logger('fix_private_photos: found photo ' . $image, LOGGER_DEBUG);
+ if(stristr($image , $site . '/photo/')) {
+ $replace = false;
$i = basename($image);
$i = str_replace('.jpg','',$i);
$x = strpos($i,'-');
@@ -2947,17 +2950,86 @@ function fix_private_photos($s,$uid) {
intval($uid)
);
if(count($r)) {
- logger('replacing photo');
- $s = str_replace($image, 'data:image/jpg;base64,' . base64_encode($r[0]['data']), $s);
+
+ // Check to see if we should replace this photo link with an embedded image
+ // 1. No need to do so if the photo is public
+ // 2. If there's a contact-id provided, see if they're in the access list
+ // for the photo. If so, embed it.
+ // 3. Otherwise, if we have an item, see if the item permissions match the photo
+ // permissions, regardless of order but first check to see if they're an exact
+ // match to save some processing overhead.
+
+ // Currently we only embed one private photo per message so as not to hit import
+ // size limits at the receiving end.
+
+ // To embed multiples, we would need to parse out the embedded photos on message
+ // receipt and limit size based only on the text component. Would also need to
+ // ignore all photos during bbcode translation and item localisation, as these
+ // will hit internal regex backtrace limits.
+
+ if(has_permissions($r[0])) {
+ if($cid) {
+ $recips = enumerate_permissions($r[0]);
+ if(in_array($cid, $recips)) {
+ $replace = true;
+ }
+ }
+ elseif($item) {
+ if(compare_permissions($item,$r[0]))
+ $replace = true;
+ }
+ }
+ if($replace) {
+ logger('fix_private_photos: replacing photo', LOGGER_DEBUG);
+ $s = str_replace($image, 'data:image/jpg;base64,' . base64_encode($r[0]['data']), $s);
+ logger('fix_private_photos: replaced: ' . $s, LOGGER_DATA);
+ }
}
}
- logger('fix_private_photos: replaced: ' . $s, LOGGER_DATA);
}
}
return($s);
}
+function has_permissions($obj) {
+ if(($obj['allow_cid'] != '') || ($obj['allow_gid'] != '') || ($obj['deny_cid'] != '') || ($obj['deny_gid'] != ''))
+ return true;
+ return false;
+}
+
+function compare_permissions($obj1,$obj2) {
+ // first part is easy. Check that these are exactly the same.
+ if(($obj1['allow_cid'] == $obj2['allow_cid'])
+ && ($obj1['allow_gid'] == $obj2['allow_gid'])
+ && ($obj1['deny_cid'] == $obj2['deny_cid'])
+ && ($obj1['deny_gid'] == $obj2['deny_gid']))
+ return true;
+
+ // This is harder. Parse all the permissions and compare the resulting set.
+
+ $recipients1 = enumerate_permissions($obj1);
+ $recipients2 = enumerate_permissions($obj2);
+ sort($recipients1);
+ sort($recipients2);
+ if($recipients1 == $recipients2)
+ return true;
+ return false;
+}
+
+// returns an array of contact-ids that are allowed to see this object
+
+function enumerate_permissions($obj) {
+ require_once('include/group.php');
+ $allow_people = expand_acl($obj['allow_cid']);
+ $allow_groups = expand_groups(expand_acl($obj['allow_gid']));
+ $deny_people = expand_acl($obj['deny_cid']);
+ $deny_groups = expand_groups(expand_acl($obj['deny_gid']));
+ $recipients = array_unique(array_merge($allow_people,$allow_groups));
+ $deny = array_unique(array_merge($deny_people,$deny_groups));
+ $recipients = array_diff($recipients,$deny);
+ return $recipients;
+}
function item_getfeedtags($item) {
$ret = array();
@@ -3004,13 +3076,20 @@ function item_getfeedattach($item) {
function item_expire($uid,$days) {
- if((! $uid) || (! $days))
+ if((! $uid) || ($days < 1))
return;
+ // $expire_network_only = save your own wall posts
+ // and just expire conversations started by others
+
+ $expire_network_only = get_pconfig($uid,'expire','network_only');
+ $sql_extra = ((intval($expire_network_only)) ? " AND wall = 0 " : "");
+
$r = q("SELECT * FROM `item`
WHERE `uid` = %d
AND `created` < UTC_TIMESTAMP() - INTERVAL %d DAY
AND `id` = `parent`
+ $sql_extra
AND `deleted` = 0",
intval($uid),
intval($days)
diff --git a/include/nav.php b/include/nav.php
index 2c9c643a9..909ba9b54 100644
--- a/include/nav.php
+++ b/include/nav.php
@@ -117,7 +117,7 @@ function nav(&$a) {
/* only show friend requests for normal pages. Other page types have automatic friendship. */
- if($_SESSION['page_flags'] == PAGE_NORMAL) {
+ if($_SESSION['page_flags'] == PAGE_NORMAL || $_SESSION['page_flags'] == PAGE_PRVGROUP) {
$nav['introductions'] = array('notifications/intros', t('Introductions'), "", t('Friend Requests'));
$nav['notifications'] = array('notifications', t('Notifications'), "", t('Notifications'));
$nav['notifications']['all']=array('notifications/system', t('See all notifications'), "", "");
diff --git a/include/notifier.php b/include/notifier.php
index cb4fb2a31..070e7a436 100644
--- a/include/notifier.php
+++ b/include/notifier.php
@@ -345,7 +345,7 @@ function notifier_run($argv, $argc){
if($mail) {
$public_message = false; // mail is not public
- $body = fix_private_photos($item['body'],$owner['uid']);
+ $body = fix_private_photos($item['body'],$owner['uid'],null,$message[0]['contact-id']);
$atom .= replace_macros($mail_template, array(
'$name' => xmlify($owner['name']),
diff --git a/include/profile_advanced.php b/include/profile_advanced.php
index bb9850cd0..8c2acd8e7 100644
--- a/include/profile_advanced.php
+++ b/include/profile_advanced.php
@@ -25,8 +25,8 @@ function advanced_profile(&$a) {
$val = ((intval($a->profile['dob']))
? day_translate(datetime_convert('UTC','UTC',$a->profile['dob'] . ' 00:00 +00:00',$year_bd_format))
- : day_translate(datetime_convert('UTC','UTC','2001-' . substr($a->profile['dob'],6) . ' 00:00 +00:00',$short_bd_format)));
-
+ : day_translate(datetime_convert('UTC','UTC','2001-' . substr($a->profile['dob'],5) . ' 00:00 +00:00',$short_bd_format)));
+
$profile['birthday'] = array( t('Birthday:'), $val);
}
diff --git a/include/profile_selectors.php b/include/profile_selectors.php
index 4700bb96f..8d29fd099 100644
--- a/include/profile_selectors.php
+++ b/include/profile_selectors.php
@@ -5,6 +5,8 @@ function gender_selector($current="",$suffix="") {
$o = '';
$select = array('', t('Male'), t('Female'), t('Currently Male'), t('Currently Female'), t('Mostly Male'), t('Mostly Female'), t('Transgender'), t('Intersex'), t('Transsexual'), t('Hermaphrodite'), t('Neuter'), t('Non-specific'), t('Other'), t('Undecided'));
+ call_hooks('gender_selector', $select);
+
$o .= "<select name=\"gender$suffix\" id=\"gender-select$suffix\" size=\"1\" >";
foreach($select as $selection) {
if($selection !== 'NOTRANSLATION') {
@@ -20,6 +22,9 @@ function sexpref_selector($current="",$suffix="") {
$o = '';
$select = array('', t('Males'), t('Females'), t('Gay'), t('Lesbian'), t('No Preference'), t('Bisexual'), t('Autosexual'), t('Abstinent'), t('Virgin'), t('Deviant'), t('Fetish'), t('Oodles'), t('Nonsexual'));
+
+ call_hooks('sexpref_selector', $select);
+
$o .= "<select name=\"sexual$suffix\" id=\"sexual-select$suffix\" size=\"1\" >";
foreach($select as $selection) {
if($selection !== 'NOTRANSLATION') {
@@ -36,6 +41,8 @@ function marital_selector($current="",$suffix="") {
$o = '';
$select = array('', t('Single'), t('Lonely'), t('Available'), t('Unavailable'), t('Has crush'), t('Infatuated'), t('Dating'), t('Unfaithful'), t('Sex Addict'), t('Friends'), t('Friends/Benefits'), t('Casual'), t('Engaged'), t('Married'), t('Imaginarily married'), t('Partners'), t('Cohabiting'), t('Common law'), t('Happy'), t('Not looking'), t('Swinger'), t('Betrayed'), t('Separated'), t('Unstable'), t('Divorced'), t('Imaginarily divorced'), t('Widowed'), t('Uncertain'), t('It\'s complicated'), t('Don\'t care'), t('Ask me') );
+ call_hooks('marital_selector', $select);
+
$o .= "<select name=\"marital\" id=\"marital-select\" size=\"1\" >";
foreach($select as $selection) {
if($selection !== 'NOTRANSLATION') {
diff --git a/mod/dfrn_confirm.php b/mod/dfrn_confirm.php
index 093993bbc..76b99cbca 100644
--- a/mod/dfrn_confirm.php
+++ b/mod/dfrn_confirm.php
@@ -202,6 +202,8 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
if($user[0]['page-flags'] == PAGE_COMMUNITY)
$params['page'] = 1;
+ if($user[0]['page-flags'] == PAGE_PRVGROUP)
+ $params['page'] = 2;
logger('dfrn_confirm: Confirm: posting data to ' . $dfrn_confirm . ': ' . print_r($params,true), LOGGER_DATA);
@@ -500,7 +502,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
);
if($contact && $g && intval($g[0]['def_gid'])) {
require_once('include/group.php');
- group_add_member($uid,'',$contact[0]['id'],$g[0]['def_gid']);
+ group_add_member($uid,'',$contact['id'],$g[0]['def_gid']);
}
// Let's send our user to the contact editor in case they want to
@@ -537,6 +539,9 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
$page = ((x($_POST,'page')) ? intval($_POST['page']) : 0 );
$version_id = ((x($_POST,'dfrn_version')) ? (float) $_POST['dfrn_version'] : 2.0);
+ $forum = (($page == 1) ? 1 : 0);
+ $prv = (($page == 2) ? 1 : 0);
+
logger('dfrn_confirm: requestee contacted: ' . $node);
logger('dfrn_confirm: request: POST=' . print_r($_POST,true), LOGGER_DATA);
@@ -691,6 +696,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
`pending` = 0,
`duplex` = %d,
`forum` = %d,
+ `prv` = %d,
`network` = '%s' WHERE `id` = %d LIMIT 1
",
dbesc($photos[0]),
@@ -701,7 +707,8 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
dbesc(datetime_convert()),
dbesc(datetime_convert()),
intval($duplex),
- intval($page),
+ intval($forum),
+ intval($prv),
dbesc(NETWORK_DFRN),
intval($dfrn_record)
);
diff --git a/mod/dfrn_notify.php b/mod/dfrn_notify.php
index 65d39d5fe..e55da5572 100644
--- a/mod/dfrn_notify.php
+++ b/mod/dfrn_notify.php
@@ -17,6 +17,9 @@ function dfrn_notify_post(&$a) {
$ssl_policy = ((x($_POST,'ssl_policy')) ? notags(trim($_POST['ssl_policy'])): 'none');
$page = ((x($_POST,'page')) ? intval($_POST['page']) : 0);
+ $forum = (($page == 1) ? 1 : 0);
+ $prv = (($page == 2) ? 1 : 0);
+
$writable = (-1);
if($dfrn_version >= 2.21) {
$writable = (($perm === 'rw') ? 1 : 0);
@@ -88,10 +91,11 @@ function dfrn_notify_post(&$a) {
$importer = $r[0];
- if((($writable != (-1)) && ($writable != $importer['writable'])) || ($importer['forum'] != $page)) {
- q("UPDATE `contact` SET `writable` = %d, forum = %d WHERE `id` = %d LIMIT 1",
+ if((($writable != (-1)) && ($writable != $importer['writable'])) || ($importer['forum'] != $forum) || ($importer['prv'] != $prv)) {
+ q("UPDATE `contact` SET `writable` = %d, forum = %d, prv = %d WHERE `id` = %d LIMIT 1",
intval(($writable == (-1)) ? $importer['writable'] : $writable),
- intval($page),
+ intval($forum),
+ intval($prv),
intval($importer['id'])
);
if($writable != (-1))
diff --git a/mod/dfrn_request.php b/mod/dfrn_request.php
index b809929d7..896fe1792 100644
--- a/mod/dfrn_request.php
+++ b/mod/dfrn_request.php
@@ -68,7 +68,7 @@ function dfrn_request_post(&$a) {
$dfrn_url = notags(trim($_POST['dfrn_url']));
$aes_allow = (((x($_POST,'aes_allow')) && ($_POST['aes_allow'] == 1)) ? 1 : 0);
$confirm_key = ((x($_POST,'confirm_key')) ? $_POST['confirm_key'] : "");
-
+ $hidden = ((x($_POST,'hidden-contact')) ? intval($_POST['hidden-contact']) : 0);
$contact_record = null;
if(x($dfrn_url)) {
@@ -98,8 +98,9 @@ function dfrn_request_post(&$a) {
}
if(is_array($contact_record)) {
- $r = q("UPDATE `contact` SET `ret-aes` = %d WHERE `id` = %d LIMIT 1",
+ $r = q("UPDATE `contact` SET `ret-aes` = %d, hidden = %d WHERE `id` = %d LIMIT 1",
intval($aes_allow),
+ intval($hidden),
intval($contact_record['id'])
);
}
@@ -144,8 +145,8 @@ function dfrn_request_post(&$a) {
*/
$r = q("INSERT INTO `contact` ( `uid`, `created`,`url`, `nurl`, `name`, `nick`, `photo`, `site-pubkey`,
- `request`, `confirm`, `notify`, `poll`, `poco`, `network`, `aes_allow`)
- VALUES ( %d, '%s', '%s', '%s', '%s' , '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d)",
+ `request`, `confirm`, `notify`, `poll`, `poco`, `network`, `aes_allow`, `hidden`)
+ VALUES ( %d, '%s', '%s', '%s', '%s' , '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, %d)",
intval(local_user()),
datetime_convert(),
dbesc($dfrn_url),
@@ -160,7 +161,8 @@ function dfrn_request_post(&$a) {
$parms['dfrn-poll'],
$parms['dfrn-poco'],
dbesc(NETWORK_DFRN),
- intval($aes_allow)
+ intval($aes_allow),
+ intval($hidden)
);
}
@@ -649,6 +651,8 @@ function dfrn_request_content(&$a) {
$o = replace_macros($tpl,array(
'$dfrn_url' => $dfrn_url,
'$aes_allow' => (($aes_allow) ? '<input type="hidden" name="aes_allow" value="1" />' : "" ),
+ '$hidethem' => t('Hide this contact'),
+ '$hidechecked' => '',
'$confirm_key' => $confirm_key,
'$welcome' => sprintf( t('Welcome home %s.'), $a->user['username']),
'$please' => sprintf( t('Please confirm your introduction/connection request to %s.'), $dfrn_url),
@@ -680,7 +684,7 @@ function dfrn_request_content(&$a) {
$auto_confirm = false;
if(count($r)) {
- if($r[0]['page-flags'] != PAGE_NORMAL)
+ if(($r[0]['page-flags'] != PAGE_NORMAL) && ($r[0]['page-flags'] != PAGE_PRVGROUP))
$auto_confirm = true;
if(! $auto_confirm) {
diff --git a/mod/item.php b/mod/item.php
index 81dd553cd..497cf5daa 100644
--- a/mod/item.php
+++ b/mod/item.php
@@ -262,17 +262,17 @@ function item_post(&$a) {
}
}
- if(strlen($categories)) {
- // get the "fileas" tags for this post
- $filedas = file_tag_file_to_list($categories, 'file');
+ if(strlen($categories)) {
+ // get the "fileas" tags for this post
+ $filedas = file_tag_file_to_list($categories, 'file');
}
- // save old and new categories, so we can determine what needs to be deleted from pconfig
- $categories_old = $categories;
- $categories = file_tag_list_to_file(trim($_REQUEST['category']), 'category');
- $categories_new = $categories;
- if(strlen($filedas)) {
- // append the fileas stuff to the new categories list
- $categories .= file_tag_list_to_file($filedas, 'file');
+ // save old and new categories, so we can determine what needs to be deleted from pconfig
+ $categories_old = $categories;
+ $categories = file_tag_list_to_file(trim($_REQUEST['category']), 'category');
+ $categories_new = $categories;
+ if(strlen($filedas)) {
+ // append the fileas stuff to the new categories list
+ $categories .= file_tag_list_to_file($filedas, 'file');
}
// Work around doubled linefeeds in Tinymce 3.5b2
@@ -355,13 +355,15 @@ function item_post(&$a) {
$image_uri = substr($image_uri,0, strpos($image_uri,'-'));
if(! strlen($image_uri))
continue;
- $srch = '<' . intval($contact_record['id']) . '>';
+ $srch = '<' . intval($contact_id) . '>';
+
$r = q("SELECT `id` FROM `photo` WHERE `allow_cid` = '%s' AND `allow_gid` = '' AND `deny_cid` = '' AND `deny_gid` = ''
AND `resource-id` = '%s' AND `uid` = %d LIMIT 1",
dbesc($srch),
dbesc($image_uri),
intval($profile_uid)
);
+
if(! count($r))
continue;
@@ -451,6 +453,7 @@ function item_post(&$a) {
$tagged = array();
+ $private_forum = false;
if(count($tags)) {
foreach($tags as $tag) {
@@ -469,11 +472,22 @@ function item_post(&$a) {
continue;
$success = handle_tag($a, $body, $inform, $str_tags, (local_user()) ? local_user() : $profile_uid , $tag);
- if($success)
+ if($success['replaced'])
$tagged[] = $tag;
+ if(is_array($success['contact']) && intval($success['contact']['prv'])) {
+ $private_forum = true;
+ $private_id = $success['contact']['id'];
+ }
}
}
+ if(($private_forum) && (! $parent) && (! $private)) {
+ // we tagged a private forum in a top level post and the message was public.
+ // Restrict it.
+ $private = 1;
+ $str_contact_allow = '<' . $private_id . '>';
+ }
+
$attachments = '';
$match = false;
@@ -891,6 +905,7 @@ function item_content(&$a) {
function handle_tag($a, &$body, &$inform, &$str_tags, $profile_uid, $tag) {
$replaced = false;
+ $r = null;
//is it a hash tag?
if(strpos($tag,'#') === 0) {
@@ -1021,5 +1036,5 @@ function handle_tag($a, &$body, &$inform, &$str_tags, $profile_uid, $tag) {
}
}
- return $replaced;
+ return array('replaced' => $replaced, 'contact' => $r[0]);
}
diff --git a/mod/network.php b/mod/network.php
index f43eeb67e..7c4c1ac04 100644
--- a/mod/network.php
+++ b/mod/network.php
@@ -402,10 +402,22 @@ function network_content(&$a, $update = 0) {
if(x($_GET,'search')) {
$search = escape_tags($_GET['search']);
- $sql_extra .= sprintf(" AND ( `item`.`body` like '%s' OR `item`.`tag` like '%s' ) ",
- dbesc(protect_sprintf('%' . $search . '%')),
- dbesc(protect_sprintf('%]' . $search . '[%'))
- );
+ if (get_config('system','use_fulltext_engine')) {
+ if(strpos($search,'#') === 0)
+ $sql_extra .= sprintf(" AND (MATCH(tag) AGAINST ('".'"%s"'."' in boolean mode)) ",
+ dbesc(protect_sprintf($search))
+ );
+ else
+ $sql_extra .= sprintf(" AND (MATCH(`item`.`body`) AGAINST ('".'"%s"'."' in boolean mode) or MATCH(tag) AGAINST ('".'"%s"'."' in boolean mode)) ",
+ dbesc(protect_sprintf($search)),
+ dbesc(protect_sprintf($search))
+ );
+ } else {
+ $sql_extra .= sprintf(" AND ( `item`.`body` like '%s' OR `item`.`tag` like '%s' ) ",
+ dbesc(protect_sprintf('%' . $search . '%')),
+ dbesc(protect_sprintf('%]' . $search . '[%'))
+ );
+ }
}
if(strlen($file)) {
$sql_extra .= file_tag_file_query('item',unxmlify($file));
@@ -414,15 +426,22 @@ function network_content(&$a, $update = 0) {
if($conv) {
$myurl = $a->get_baseurl() . '/profile/'. $a->user['nickname'];
$myurl = substr($myurl,strpos($myurl,'://')+3);
- $myurl = str_replace(array('www.','.'),array('','\\.'),$myurl);
+ $myurl = str_replace('www.','',$myurl);
$diasp_url = str_replace('/profile/','/u/',$myurl);
- $sql_extra .= sprintf(" AND `item`.`parent` IN (SELECT distinct(`parent`) from item where ( `author-link` like '%s' or `tag` like '%s' or tag like '%s' )) ",
- dbesc(protect_sprintf('%s' . $myurl)),
- dbesc(protect_sprintf('%' . $myurl . '\\]%')),
- dbesc(protect_sprintf('%' . $diasp_url . '\\]%'))
- );
- }
+ if (get_config('system','use_fulltext_engine'))
+ $sql_extra .= sprintf(" AND `item`.`parent` IN (SELECT distinct(`parent`) from item where (MATCH(`author-link`) AGAINST ('".'"%s"'."' in boolean mode) or MATCH(`tag`) AGAINST ('".'"%s"'."' in boolean mode) or MATCH(tag) AGAINST ('".'"%s"'."' in boolean mode))) ",
+ dbesc(protect_sprintf($myurl)),
+ dbesc(protect_sprintf($myurl)),
+ dbesc(protect_sprintf($diasp_url))
+ );
+ else
+ $sql_extra .= sprintf(" AND `item`.`parent` IN (SELECT distinct(`parent`) from item where ( `author-link` like '%s' or `tag` like '%s' or tag like '%s' )) ",
+ dbesc(protect_sprintf('%' . $myurl)),
+ dbesc(protect_sprintf('%' . $myurl . ']%')),
+ dbesc(protect_sprintf('%' . $diasp_url . ']%'))
+ );
+ }
if($update) {
diff --git a/mod/notes.php b/mod/notes.php
index 0072ce447..703c898e6 100644
--- a/mod/notes.php
+++ b/mod/notes.php
@@ -80,7 +80,8 @@ function notes_content(&$a,$update = false) {
$r = q("SELECT COUNT(*) AS `total`
FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
- WHERE `item`.`uid` = %d AND `item`.`visible` = 1 and `item`.`moderated` = 0 AND `item`.`deleted` = 0
+ WHERE `item`.`uid` = %d AND `item`.`visible` = 1 and `item`.`moderated` = 0
+ AND `item`.`deleted` = 0 AND `item`.`type` = 'note'
AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 AND `contact`.`self` = 1
AND `item`.`id` = `item`.`parent` AND `item`.`wall` = 0
$sql_extra ",
@@ -95,7 +96,8 @@ function notes_content(&$a,$update = false) {
$r = q("SELECT `item`.`id` AS `item_id`, `contact`.`uid` AS `contact-uid`
FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
- WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0 and `item`.`moderated` = 0
+ WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0
+ and `item`.`moderated` = 0 AND `item`.`type` = 'note'
AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 AND `contact`.`self` = 1
AND `item`.`id` = `item`.`parent` AND `item`.`wall` = 0
$sql_extra
diff --git a/mod/profiles.php b/mod/profiles.php
index 8e4fba74e..ca3890eb9 100644
--- a/mod/profiles.php
+++ b/mod/profiles.php
@@ -176,9 +176,18 @@ function profiles_post(&$a) {
$changes[] = t('Interests');
$value = $interest;
}
- if($address != $orig[0]['address'] || $locality != $orig[0]['locality'] || $region != $orig[0]['region']
+ if($address != $orig[0]['address']) {
+ $changes[] = t('Address');
+ // New address not sent in notifications, potential privacy issues
+ // in case this leaks to unintended recipients. Yes, it's in the public
+ // profile but that doesn't mean we have to broadcast it to everybody.
+ }
+ if($locality != $orig[0]['locality'] || $region != $orig[0]['region']
|| $country_name != $orig[0]['country-name']) {
$changes[] = t('Location');
+ $comma1 = ((($locality) && ($region || $country_name)) ? ', ' : ' ');
+ $comma2 = (($region && $country_name) ? ', ' : '');
+ $value = $locality . $comma1 . $region . $comma2 . $country_name;
}
profile_activity($changes,$value);
diff --git a/mod/search.php b/mod/search.php
index 3e6bf68aa..466ffc4c3 100644
--- a/mod/search.php
+++ b/mod/search.php
@@ -71,7 +71,7 @@ function search_content(&$a) {
notice( t('Public access denied.') . EOL);
return;
}
-
+
nav_set_selected('search');
require_once("include/bbcode.php");
@@ -96,7 +96,6 @@ function search_content(&$a) {
$o .= search($search,'search-box','/search',((local_user()) ? true : false));
-
if(strpos($search,'#') === 0) {
$tag = true;
$search = substr($search,1);
@@ -109,10 +108,17 @@ function search_content(&$a) {
if(! $search)
return $o;
- if($tag)
- $sql_extra = sprintf(" AND `item`.`tag` REGEXP '%s' ", dbesc('\\]' . preg_quote($search) . '\\['));
- else
- $sql_extra = sprintf(" AND `item`.`body` REGEXP '%s' ", dbesc(preg_quote($search)));
+ if (get_config('system','use_fulltext_engine')) {
+ if($tag)
+ $sql_extra = sprintf(" AND MATCH (`item`.`tag`) AGAINST ('".'"%s"'."' in boolean mode) ", '#'.dbesc(protect_sprintf($search)));
+ else
+ $sql_extra = sprintf(" AND MATCH (`item`.`body`) AGAINST ('".'"%s"'."' in boolean mode) ", dbesc(protect_sprintf($search)));
+ } else {
+ if($tag)
+ $sql_extra = sprintf(" AND `item`.`tag` REGEXP '%s' ", dbesc('\\]' . protect_sprintf(preg_quote($search)) . '\\['));
+ else
+ $sql_extra = sprintf(" AND `item`.`body` REGEXP '%s' ", dbesc(protect_sprintf(preg_quote($search))));
+ }
diff --git a/mod/settings.php b/mod/settings.php
index 40fa55eea..bbdfe1ac9 100644
--- a/mod/settings.php
+++ b/mod/settings.php
@@ -15,6 +15,7 @@ function get_theme_config_file($theme){
}
function settings_init(&$a) {
+
// These lines provide the javascript needed by the acl selector
$a->page['htmlhead'] .= "<script> var ispublic = '" . t('everybody') . "';" ;
@@ -86,6 +87,7 @@ EOT;
$tabtpl = get_markup_template("generic_links_widget.tpl");
$a->page['aside'] = replace_macros($tabtpl, array(
'$title' => t('Settings'),
+ '$class' => 'settings-widget',
'$items' => $tabs,
));
@@ -337,8 +339,7 @@ function settings_post(&$a) {
$expire_notes = ((x($_POST,'expire_notes')) ? intval($_POST['expire_notes']) : 0);
$expire_starred = ((x($_POST,'expire_starred')) ? intval($_POST['expire_starred']) : 0);
$expire_photos = ((x($_POST,'expire_photos'))? intval($_POST['expire_photos']) : 0);
-
-
+ $expire_network_only = ((x($_POST,'expire_network_only'))? intval($_POST['expire_network_only']) : 0);
$allow_location = (((x($_POST,'allow_location')) && (intval($_POST['allow_location']) == 1)) ? 1: 0);
$publish = (((x($_POST,'profile_in_directory')) && (intval($_POST['profile_in_directory']) == 1)) ? 1: 0);
@@ -434,6 +435,7 @@ function settings_post(&$a) {
set_pconfig(local_user(),'expire','notes', $expire_notes);
set_pconfig(local_user(),'expire','starred', $expire_starred);
set_pconfig(local_user(),'expire','photos', $expire_photos);
+ set_pconfig(local_user(),'expire','network_only', $expire_network_only);
set_pconfig(local_user(),'system','suggestme', $suggestme);
set_pconfig(local_user(),'system','post_newfriend', $post_newfriend);
@@ -443,7 +445,7 @@ function settings_post(&$a) {
if($page_flags == PAGE_PRVGROUP) {
$hidewall = 1;
- if((! str_contact_allow) && (! str_group_allow) && (! str_contact_deny) && (! $str_group_deny)) {
+ if((! $str_contact_allow) && (! $str_group_allow) && (! $str_contact_deny) && (! $str_group_deny)) {
if($def_gid) {
info( t('Private forum has no privacy permissions. Using default privacy group.'). EOL);
$str_group_allow = '<' . $def_gid . '>';
@@ -811,6 +813,9 @@ function settings_content(&$a) {
$expire_photos = get_pconfig(local_user(), 'expire','photos');
$expire_photos = (($expire_photos===false)? '0' : $expire_photos); // default if not set: 0
+ $expire_network_only = get_pconfig(local_user(), 'expire','network_only');
+ $expire_network_only = (($expire_network_only===false)? '0' : $expire_network_only); // default if not set: 0
+
$suggestme = get_pconfig(local_user(), 'system','suggestme');
$suggestme = (($suggestme===false)? '0': $suggestme); // default if not set: 0
@@ -953,6 +958,7 @@ function settings_content(&$a) {
'notes' => array('expire_notes', t("Expire personal notes:"), $expire_notes, '', array(t('No'),t('Yes'))),
'starred' => array('expire_starred', t("Expire starred posts:"), $expire_starred, '', array(t('No'),t('Yes'))),
'photos' => array('expire_photos', t("Expire photos:"), $expire_photos, '', array(t('No'),t('Yes'))),
+ 'network_only' => array('expire_network_only', t("Only expire posts by others:"), $expire_network_only, '', array(t('No'),t('Yes'))),
);
require_once('include/group.php');
diff --git a/mod/wallmessage.php b/mod/wallmessage.php
index 1a4882b64..cf349775c 100644
--- a/mod/wallmessage.php
+++ b/mod/wallmessage.php
@@ -44,7 +44,7 @@ function wallmessage_post(&$a) {
}
// Work around doubled linefeeds in Tinymce 3.5b2
-dbg(1);
+
$body = str_replace("\r\n","\n",$body);
$body = str_replace("\n\n","\n",$body);
@@ -67,7 +67,7 @@ dbg(1);
default:
info( t('Message sent.') . EOL );
}
-dbg(0);
+
// goaway($a->get_baseurl() . '/profile/' . $user['nickname']);
}
diff --git a/update.php b/update.php
index f25d16f9d..f94b89fd3 100644
--- a/update.php
+++ b/update.php
@@ -1,6 +1,6 @@
<?php
-define( 'UPDATE_VERSION' , 1144 );
+define( 'UPDATE_VERSION' , 1145 );
/**
*
@@ -1253,5 +1253,9 @@ function update_1143() {
return UPDATE_SUCCESS ;
}
-
-
+function update_1144() {
+ $r = q("alter table contact add prv tinyint(1) not null default '0' after forum");
+ if(! $r)
+ return UPDATE_FAILED ;
+ return UPDATE_SUCCESS ;
+}
diff --git a/util/messages.po b/util/messages.po
index 7aefd8f67..37c1785d4 100644
--- a/util/messages.po
+++ b/util/messages.po
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: 3.0.1353\n"
+"Project-Id-Version: 3.0.1358\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-05-24 16:51-0700\n"
+"POT-Creation-Date: 2012-05-29 10:00-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -39,8 +39,8 @@ msgstr ""
#: ../../mod/api.php:31 ../../mod/photos.php:130 ../../mod/photos.php:920
#: ../../mod/editpost.php:10 ../../mod/install.php:151
#: ../../mod/notifications.php:66 ../../mod/contacts.php:125
-#: ../../mod/settings.php:104 ../../mod/settings.php:535
-#: ../../mod/settings.php:540 ../../mod/manage.php:86 ../../mod/network.php:6
+#: ../../mod/settings.php:106 ../../mod/settings.php:537
+#: ../../mod/settings.php:542 ../../mod/manage.php:86 ../../mod/network.php:6
#: ../../mod/notes.php:20 ../../mod/wallmessage.php:9
#: ../../mod/wallmessage.php:33 ../../mod/wallmessage.php:79
#: ../../mod/wallmessage.php:103 ../../mod/attach.php:33
@@ -52,10 +52,10 @@ msgstr ""
#: ../../mod/message.php:96 ../../mod/allfriends.php:9
#: ../../mod/nogroup.php:25 ../../mod/wall_upload.php:53
#: ../../mod/follow.php:8 ../../mod/display.php:138 ../../mod/profiles.php:7
-#: ../../mod/profiles.php:365 ../../mod/delegate.php:6
+#: ../../mod/profiles.php:374 ../../mod/delegate.php:6
#: ../../mod/suggest.php:28 ../../mod/invite.php:13 ../../mod/invite.php:81
#: ../../mod/dfrn_confirm.php:53 ../../addon/facebook/facebook.php:503
-#: ../../include/items.php:3214 ../../index.php:306
+#: ../../include/items.php:3293 ../../index.php:306
msgid "Permission denied."
msgstr ""
@@ -84,8 +84,8 @@ msgstr ""
msgid "Return to contact editor"
msgstr ""
-#: ../../mod/crepair.php:148 ../../mod/settings.php:555
-#: ../../mod/settings.php:581 ../../mod/admin.php:656 ../../mod/admin.php:665
+#: ../../mod/crepair.php:148 ../../mod/settings.php:557
+#: ../../mod/settings.php:583 ../../mod/admin.php:656 ../../mod/admin.php:665
msgid "Name"
msgstr ""
@@ -127,11 +127,11 @@ msgstr ""
#: ../../mod/photos.php:1336 ../../mod/photos.php:1367
#: ../../mod/install.php:245 ../../mod/install.php:283
#: ../../mod/localtime.php:45 ../../mod/contacts.php:322
-#: ../../mod/settings.php:553 ../../mod/settings.php:699
-#: ../../mod/settings.php:760 ../../mod/settings.php:964
+#: ../../mod/settings.php:555 ../../mod/settings.php:701
+#: ../../mod/settings.php:762 ../../mod/settings.php:970
#: ../../mod/manage.php:109 ../../mod/group.php:85 ../../mod/admin.php:417
#: ../../mod/admin.php:653 ../../mod/admin.php:789 ../../mod/admin.php:988
-#: ../../mod/admin.php:1075 ../../mod/profiles.php:534
+#: ../../mod/admin.php:1075 ../../mod/profiles.php:543
#: ../../mod/invite.php:119 ../../addon/facebook/facebook.php:605
#: ../../addon/yourls/yourls.php:76 ../../addon/ljpost/ljpost.php:93
#: ../../addon/nsfw/nsfw.php:57 ../../addon/planets/planets.php:158
@@ -221,7 +221,7 @@ msgid "link to source"
msgstr ""
#: ../../mod/events.php:324 ../../view/theme/diabook/theme.php:126
-#: ../../include/nav.php:52 ../../boot.php:1523
+#: ../../include/nav.php:52 ../../boot.php:1520
msgid "Events"
msgstr ""
@@ -271,7 +271,7 @@ msgid "Description:"
msgstr ""
#: ../../mod/events.php:423 ../../include/event.php:37
-#: ../../include/bb2diaspora.php:260 ../../boot.php:1103
+#: ../../include/bb2diaspora.php:265 ../../boot.php:1100
msgid "Location:"
msgstr ""
@@ -280,8 +280,8 @@ msgid "Share this event"
msgstr ""
#: ../../mod/tagrm.php:11 ../../mod/tagrm.php:94
-#: ../../mod/dfrn_request.php:826 ../../mod/settings.php:554
-#: ../../mod/settings.php:580 ../../addon/js_upload/js_upload.php:45
+#: ../../mod/dfrn_request.php:826 ../../mod/settings.php:556
+#: ../../mod/settings.php:582 ../../addon/js_upload/js_upload.php:45
msgid "Cancel"
msgstr ""
@@ -325,28 +325,30 @@ msgid ""
msgstr ""
#: ../../mod/api.php:105 ../../mod/dfrn_request.php:814
-#: ../../mod/settings.php:875 ../../mod/settings.php:881
-#: ../../mod/settings.php:889 ../../mod/settings.php:893
-#: ../../mod/settings.php:898 ../../mod/settings.php:904
-#: ../../mod/settings.php:910 ../../mod/settings.php:916
-#: ../../mod/settings.php:952 ../../mod/settings.php:953
-#: ../../mod/settings.php:954 ../../mod/settings.php:955
-#: ../../mod/register.php:511 ../../mod/profiles.php:511
+#: ../../mod/settings.php:880 ../../mod/settings.php:886
+#: ../../mod/settings.php:894 ../../mod/settings.php:898
+#: ../../mod/settings.php:903 ../../mod/settings.php:909
+#: ../../mod/settings.php:915 ../../mod/settings.php:921
+#: ../../mod/settings.php:957 ../../mod/settings.php:958
+#: ../../mod/settings.php:959 ../../mod/settings.php:960
+#: ../../mod/settings.php:961 ../../mod/register.php:511
+#: ../../mod/profiles.php:520
msgid "Yes"
msgstr ""
#: ../../mod/api.php:106 ../../mod/dfrn_request.php:815
-#: ../../mod/settings.php:875 ../../mod/settings.php:881
-#: ../../mod/settings.php:889 ../../mod/settings.php:893
-#: ../../mod/settings.php:898 ../../mod/settings.php:904
-#: ../../mod/settings.php:910 ../../mod/settings.php:916
-#: ../../mod/settings.php:952 ../../mod/settings.php:953
-#: ../../mod/settings.php:954 ../../mod/settings.php:955
-#: ../../mod/register.php:512 ../../mod/profiles.php:512
+#: ../../mod/settings.php:880 ../../mod/settings.php:886
+#: ../../mod/settings.php:894 ../../mod/settings.php:898
+#: ../../mod/settings.php:903 ../../mod/settings.php:909
+#: ../../mod/settings.php:915 ../../mod/settings.php:921
+#: ../../mod/settings.php:957 ../../mod/settings.php:958
+#: ../../mod/settings.php:959 ../../mod/settings.php:960
+#: ../../mod/settings.php:961 ../../mod/register.php:512
+#: ../../mod/profiles.php:521
msgid "No"
msgstr ""
-#: ../../mod/photos.php:43 ../../boot.php:1517
+#: ../../mod/photos.php:43 ../../boot.php:1514
msgid "Photo Albums"
msgstr ""
@@ -362,7 +364,7 @@ msgstr ""
msgid "Upload New Photos"
msgstr ""
-#: ../../mod/photos.php:69 ../../mod/settings.php:20
+#: ../../mod/photos.php:69 ../../mod/settings.php:21
msgid "everybody"
msgstr ""
@@ -551,7 +553,7 @@ msgstr ""
#: ../../mod/photos.php:1295 ../../mod/photos.php:1335
#: ../../mod/photos.php:1366 ../../include/conversation.php:558
-#: ../../boot.php:517
+#: ../../boot.php:514
msgid "Comment"
msgstr ""
@@ -560,8 +562,8 @@ msgstr ""
msgid "Preview"
msgstr ""
-#: ../../mod/photos.php:1394 ../../mod/settings.php:616
-#: ../../mod/settings.php:697 ../../mod/group.php:168 ../../mod/admin.php:660
+#: ../../mod/photos.php:1394 ../../mod/settings.php:618
+#: ../../mod/settings.php:699 ../../mod/group.php:168 ../../mod/admin.php:660
#: ../../include/conversation.php:322 ../../include/conversation.php:588
msgid "Delete"
msgstr ""
@@ -631,7 +633,7 @@ msgstr ""
msgid "Post to Email"
msgstr ""
-#: ../../mod/editpost.php:95 ../../mod/settings.php:615
+#: ../../mod/editpost.php:95 ../../mod/settings.php:617
#: ../../include/conversation.php:575
msgid "Edit"
msgstr ""
@@ -861,7 +863,7 @@ msgstr ""
msgid "StatusNet/Federated Social Web"
msgstr ""
-#: ../../mod/dfrn_request.php:820 ../../mod/settings.php:650
+#: ../../mod/dfrn_request.php:820 ../../mod/settings.php:652
#: ../../include/contact_selectors.php:80
msgid "Diaspora"
msgstr ""
@@ -904,7 +906,7 @@ msgid ""
msgstr ""
#: ../../mod/install.php:139 ../../mod/install.php:203
-#: ../../mod/install.php:480
+#: ../../mod/install.php:482
msgid "Please see the file \"INSTALL.txt\"."
msgstr ""
@@ -976,157 +978,166 @@ msgstr ""
msgid "Could not find a command line version of PHP in the web server PATH."
msgstr ""
-#: ../../mod/install.php:320
+#: ../../mod/install.php:318
+msgid ""
+"If you don't have a command line version of PHP installed on server, you "
+"will not be able to run background polling via cron. See <a href='http://"
+"friendica.com/node/27'>'Activating scheduled tasks'</a>"
+msgstr ""
+
+#: ../../mod/install.php:322
msgid "PHP executable path"
msgstr ""
-#: ../../mod/install.php:320
-msgid "Enter full path to php executable"
+#: ../../mod/install.php:322
+msgid ""
+"Enter full path to php executable. You can leave this blank to continue the "
+"installation."
msgstr ""
-#: ../../mod/install.php:325
+#: ../../mod/install.php:327
msgid "Command line PHP"
msgstr ""
-#: ../../mod/install.php:334
+#: ../../mod/install.php:336
msgid ""
"The command line version of PHP on your system does not have "
"\"register_argc_argv\" enabled."
msgstr ""
-#: ../../mod/install.php:335
+#: ../../mod/install.php:337
msgid "This is required for message delivery to work."
msgstr ""
-#: ../../mod/install.php:337
+#: ../../mod/install.php:339
msgid "PHP register_argc_argv"
msgstr ""
-#: ../../mod/install.php:358
+#: ../../mod/install.php:360
msgid ""
"Error: the \"openssl_pkey_new\" function on this system is not able to "
"generate encryption keys"
msgstr ""
-#: ../../mod/install.php:359
+#: ../../mod/install.php:361
msgid ""
"If running under Windows, please see \"http://www.php.net/manual/en/openssl."
"installation.php\"."
msgstr ""
-#: ../../mod/install.php:361
+#: ../../mod/install.php:363
msgid "Generate encryption keys"
msgstr ""
-#: ../../mod/install.php:368
+#: ../../mod/install.php:370
msgid "libCurl PHP module"
msgstr ""
-#: ../../mod/install.php:369
+#: ../../mod/install.php:371
msgid "GD graphics PHP module"
msgstr ""
-#: ../../mod/install.php:370
+#: ../../mod/install.php:372
msgid "OpenSSL PHP module"
msgstr ""
-#: ../../mod/install.php:371
+#: ../../mod/install.php:373
msgid "mysqli PHP module"
msgstr ""
-#: ../../mod/install.php:372
+#: ../../mod/install.php:374
msgid "mb_string PHP module"
msgstr ""
-#: ../../mod/install.php:377 ../../mod/install.php:379
+#: ../../mod/install.php:379 ../../mod/install.php:381
msgid "Apache mod_rewrite module"
msgstr ""
-#: ../../mod/install.php:377
+#: ../../mod/install.php:379
msgid ""
"Error: Apache webserver mod-rewrite module is required but not installed."
msgstr ""
-#: ../../mod/install.php:384
+#: ../../mod/install.php:386
msgid "Error: libCURL PHP module required but not installed."
msgstr ""
-#: ../../mod/install.php:388
+#: ../../mod/install.php:390
msgid ""
"Error: GD graphics PHP module with JPEG support required but not installed."
msgstr ""
-#: ../../mod/install.php:392
+#: ../../mod/install.php:394
msgid "Error: openssl PHP module required but not installed."
msgstr ""
-#: ../../mod/install.php:396
+#: ../../mod/install.php:398
msgid "Error: mysqli PHP module required but not installed."
msgstr ""
-#: ../../mod/install.php:400
+#: ../../mod/install.php:402
msgid "Error: mb_string PHP module required but not installed."
msgstr ""
-#: ../../mod/install.php:417
+#: ../../mod/install.php:419
msgid ""
"The web installer needs to be able to create a file called \".htconfig.php\" "
"in the top folder of your web server and it is unable to do so."
msgstr ""
-#: ../../mod/install.php:418
+#: ../../mod/install.php:420
msgid ""
"This is most often a permission setting, as the web server may not be able "
"to write files in your folder - even if you can."
msgstr ""
-#: ../../mod/install.php:419
+#: ../../mod/install.php:421
msgid ""
"At the end of this procedure, we will give you a text to save in a file "
"named .htconfig.php in your Friendica top folder."
msgstr ""
-#: ../../mod/install.php:420
+#: ../../mod/install.php:422
msgid ""
"You can alternatively skip this procedure and perform a manual installation. "
"Please see the file \"INSTALL.txt\" for instructions."
msgstr ""
-#: ../../mod/install.php:423
+#: ../../mod/install.php:425
msgid ".htconfig.php is writable"
msgstr ""
-#: ../../mod/install.php:434
+#: ../../mod/install.php:436
msgid ""
"Url rewrite in .htconfig is not working. Check your server configuration."
msgstr ""
-#: ../../mod/install.php:436
+#: ../../mod/install.php:438
msgid "Url rewrite is working"
msgstr ""
-#: ../../mod/install.php:442
+#: ../../mod/install.php:444
msgid ""
"The database configuration file \".htconfig.php\" could not be written. "
"Please use the enclosed text to create a configuration file in your web "
"server root."
msgstr ""
-#: ../../mod/install.php:467
+#: ../../mod/install.php:469
msgid "Errors encountered creating database tables."
msgstr ""
-#: ../../mod/install.php:478
+#: ../../mod/install.php:480
msgid "<h1>What next</h1>"
msgstr ""
-#: ../../mod/install.php:479
+#: ../../mod/install.php:481
msgid ""
"IMPORTANT: You will need to [manually] setup a scheduled task for the poller."
msgstr ""
#: ../../mod/localtime.php:12 ../../include/event.php:11
-#: ../../include/bb2diaspora.php:238
+#: ../../include/bb2diaspora.php:243
msgid "l F d, Y \\@ g:i A"
msgstr ""
@@ -1172,7 +1183,7 @@ msgid "is interested in:"
msgstr ""
#: ../../mod/match.php:58 ../../mod/suggest.php:59
-#: ../../include/contact_widgets.php:9 ../../boot.php:1047
+#: ../../include/contact_widgets.php:9 ../../boot.php:1044
msgid "Connect"
msgstr ""
@@ -1699,7 +1710,7 @@ msgstr ""
#: ../../addon/facebook/facebook.php:1178
#: ../../addon/public_server/public_server.php:62
#: ../../addon/testdrive/testdrive.php:67 ../../include/items.php:2738
-#: ../../boot.php:697
+#: ../../boot.php:694
msgid "Administrator"
msgstr ""
@@ -1709,7 +1720,7 @@ msgid ""
"Password reset failed."
msgstr ""
-#: ../../mod/lostpass.php:83 ../../boot.php:829
+#: ../../mod/lostpass.php:83 ../../boot.php:826
msgid "Password Reset"
msgstr ""
@@ -1753,97 +1764,97 @@ msgstr ""
msgid "Reset"
msgstr ""
-#: ../../mod/settings.php:49 ../../include/nav.php:137
+#: ../../mod/settings.php:50 ../../include/nav.php:137
msgid "Account settings"
msgstr ""
-#: ../../mod/settings.php:54
+#: ../../mod/settings.php:55
msgid "Display settings"
msgstr ""
-#: ../../mod/settings.php:60
+#: ../../mod/settings.php:61
msgid "Connector settings"
msgstr ""
-#: ../../mod/settings.php:65
+#: ../../mod/settings.php:66
msgid "Plugin settings"
msgstr ""
-#: ../../mod/settings.php:70
+#: ../../mod/settings.php:71
msgid "Connected apps"
msgstr ""
-#: ../../mod/settings.php:75
+#: ../../mod/settings.php:76
msgid "Export personal data"
msgstr ""
-#: ../../mod/settings.php:80
+#: ../../mod/settings.php:81
msgid "Remove account"
msgstr ""
-#: ../../mod/settings.php:88 ../../mod/admin.php:748 ../../mod/admin.php:953
+#: ../../mod/settings.php:89 ../../mod/admin.php:748 ../../mod/admin.php:953
#: ../../addon/mathjax/mathjax.php:36 ../../view/theme/diabook/theme.php:638
#: ../../view/theme/diabook/theme.php:768 ../../include/nav.php:137
msgid "Settings"
msgstr ""
-#: ../../mod/settings.php:131
+#: ../../mod/settings.php:133
msgid "Missing some important data!"
msgstr ""
-#: ../../mod/settings.php:134 ../../mod/settings.php:579
+#: ../../mod/settings.php:136 ../../mod/settings.php:581
msgid "Update"
msgstr ""
-#: ../../mod/settings.php:239
+#: ../../mod/settings.php:241
msgid "Failed to connect with email account using the settings provided."
msgstr ""
-#: ../../mod/settings.php:244
+#: ../../mod/settings.php:246
msgid "Email settings updated."
msgstr ""
-#: ../../mod/settings.php:303
+#: ../../mod/settings.php:305
msgid "Passwords do not match. Password unchanged."
msgstr ""
-#: ../../mod/settings.php:308
+#: ../../mod/settings.php:310
msgid "Empty passwords are not allowed. Password unchanged."
msgstr ""
-#: ../../mod/settings.php:319
+#: ../../mod/settings.php:321
msgid "Password changed."
msgstr ""
-#: ../../mod/settings.php:321
+#: ../../mod/settings.php:323
msgid "Password update failed. Please try again."
msgstr ""
-#: ../../mod/settings.php:385
+#: ../../mod/settings.php:386
msgid " Please use a shorter name."
msgstr ""
-#: ../../mod/settings.php:387
+#: ../../mod/settings.php:388
msgid " Name too short."
msgstr ""
-#: ../../mod/settings.php:393
+#: ../../mod/settings.php:394
msgid " Not valid email."
msgstr ""
-#: ../../mod/settings.php:395
+#: ../../mod/settings.php:396
msgid " Cannot change to that email."
msgstr ""
-#: ../../mod/settings.php:448
+#: ../../mod/settings.php:450
msgid "Private forum has no privacy permissions. Using default privacy group."
msgstr ""
-#: ../../mod/settings.php:452
+#: ../../mod/settings.php:454
msgid "Private forum has no privacy permissions and no default privacy group."
msgstr ""
-#: ../../mod/settings.php:482 ../../addon/facebook/facebook.php:488
+#: ../../mod/settings.php:484 ../../addon/facebook/facebook.php:488
#: ../../addon/impressum/impressum.php:77
#: ../../addon/openstreetmap/openstreetmap.php:80
#: ../../addon/mathjax/mathjax.php:66 ../../addon/piwik/piwik.php:105
@@ -1851,417 +1862,421 @@ msgstr ""
msgid "Settings updated."
msgstr ""
-#: ../../mod/settings.php:552 ../../mod/settings.php:578
-#: ../../mod/settings.php:614
+#: ../../mod/settings.php:554 ../../mod/settings.php:580
+#: ../../mod/settings.php:616
msgid "Add application"
msgstr ""
-#: ../../mod/settings.php:556 ../../mod/settings.php:582
+#: ../../mod/settings.php:558 ../../mod/settings.php:584
#: ../../addon/statusnet/statusnet.php:555
msgid "Consumer Key"
msgstr ""
-#: ../../mod/settings.php:557 ../../mod/settings.php:583
+#: ../../mod/settings.php:559 ../../mod/settings.php:585
#: ../../addon/statusnet/statusnet.php:554
msgid "Consumer Secret"
msgstr ""
-#: ../../mod/settings.php:558 ../../mod/settings.php:584
+#: ../../mod/settings.php:560 ../../mod/settings.php:586
msgid "Redirect"
msgstr ""
-#: ../../mod/settings.php:559 ../../mod/settings.php:585
+#: ../../mod/settings.php:561 ../../mod/settings.php:587
msgid "Icon url"
msgstr ""
-#: ../../mod/settings.php:570
+#: ../../mod/settings.php:572
msgid "You can't edit this application."
msgstr ""
-#: ../../mod/settings.php:613
+#: ../../mod/settings.php:615
msgid "Connected Apps"
msgstr ""
-#: ../../mod/settings.php:617
+#: ../../mod/settings.php:619
msgid "Client key starts with"
msgstr ""
-#: ../../mod/settings.php:618
+#: ../../mod/settings.php:620
msgid "No name"
msgstr ""
-#: ../../mod/settings.php:619
+#: ../../mod/settings.php:621
msgid "Remove authorization"
msgstr ""
-#: ../../mod/settings.php:630
+#: ../../mod/settings.php:632
msgid "No Plugin settings configured"
msgstr ""
-#: ../../mod/settings.php:638 ../../addon/widgets/widgets.php:123
+#: ../../mod/settings.php:640 ../../addon/widgets/widgets.php:123
msgid "Plugin Settings"
msgstr ""
-#: ../../mod/settings.php:650 ../../mod/settings.php:651
+#: ../../mod/settings.php:652 ../../mod/settings.php:653
#, php-format
msgid "Built-in support for %s connectivity is %s"
msgstr ""
-#: ../../mod/settings.php:650 ../../mod/settings.php:651
+#: ../../mod/settings.php:652 ../../mod/settings.php:653
msgid "enabled"
msgstr ""
-#: ../../mod/settings.php:650 ../../mod/settings.php:651
+#: ../../mod/settings.php:652 ../../mod/settings.php:653
msgid "disabled"
msgstr ""
-#: ../../mod/settings.php:651
+#: ../../mod/settings.php:653
msgid "StatusNet"
msgstr ""
-#: ../../mod/settings.php:681
+#: ../../mod/settings.php:683
msgid "Connector Settings"
msgstr ""
-#: ../../mod/settings.php:686
+#: ../../mod/settings.php:688
msgid "Email/Mailbox Setup"
msgstr ""
-#: ../../mod/settings.php:687
+#: ../../mod/settings.php:689
msgid ""
"If you wish to communicate with email contacts using this service "
"(optional), please specify how to connect to your mailbox."
msgstr ""
-#: ../../mod/settings.php:688
+#: ../../mod/settings.php:690
msgid "Last successful email check:"
msgstr ""
-#: ../../mod/settings.php:689
+#: ../../mod/settings.php:691
msgid "Email access is disabled on this site."
msgstr ""
-#: ../../mod/settings.php:690
+#: ../../mod/settings.php:692
msgid "IMAP server name:"
msgstr ""
-#: ../../mod/settings.php:691
+#: ../../mod/settings.php:693
msgid "IMAP port:"
msgstr ""
-#: ../../mod/settings.php:692
+#: ../../mod/settings.php:694
msgid "Security:"
msgstr ""
-#: ../../mod/settings.php:692 ../../mod/settings.php:697
+#: ../../mod/settings.php:694 ../../mod/settings.php:699
msgid "None"
msgstr ""
-#: ../../mod/settings.php:693
+#: ../../mod/settings.php:695
msgid "Email login name:"
msgstr ""
-#: ../../mod/settings.php:694
+#: ../../mod/settings.php:696
msgid "Email password:"
msgstr ""
-#: ../../mod/settings.php:695
+#: ../../mod/settings.php:697
msgid "Reply-to address:"
msgstr ""
-#: ../../mod/settings.php:696
+#: ../../mod/settings.php:698
msgid "Send public posts to all email contacts:"
msgstr ""
-#: ../../mod/settings.php:697
+#: ../../mod/settings.php:699
msgid "Action after import:"
msgstr ""
-#: ../../mod/settings.php:697
+#: ../../mod/settings.php:699
msgid "Mark as seen"
msgstr ""
-#: ../../mod/settings.php:697
+#: ../../mod/settings.php:699
msgid "Move to folder"
msgstr ""
-#: ../../mod/settings.php:698
+#: ../../mod/settings.php:700
msgid "Move to folder:"
msgstr ""
-#: ../../mod/settings.php:758
+#: ../../mod/settings.php:760
msgid "Display Settings"
msgstr ""
-#: ../../mod/settings.php:764
+#: ../../mod/settings.php:766
msgid "Display Theme:"
msgstr ""
-#: ../../mod/settings.php:765
+#: ../../mod/settings.php:767
msgid "Update browser every xx seconds"
msgstr ""
-#: ../../mod/settings.php:765
+#: ../../mod/settings.php:767
msgid "Minimum of 10 seconds, no maximum"
msgstr ""
-#: ../../mod/settings.php:766
+#: ../../mod/settings.php:768
msgid "Number of items to display on the network page:"
msgstr ""
-#: ../../mod/settings.php:766
+#: ../../mod/settings.php:768
msgid "Maximum of 100 items"
msgstr ""
-#: ../../mod/settings.php:767
+#: ../../mod/settings.php:769
msgid "Don't show emoticons"
msgstr ""
-#: ../../mod/settings.php:835 ../../mod/admin.php:180 ../../mod/admin.php:634
+#: ../../mod/settings.php:840 ../../mod/admin.php:180 ../../mod/admin.php:634
msgid "Normal Account"
msgstr ""
-#: ../../mod/settings.php:836
+#: ../../mod/settings.php:841
msgid "This account is a normal personal profile"
msgstr ""
-#: ../../mod/settings.php:839 ../../mod/admin.php:181 ../../mod/admin.php:635
+#: ../../mod/settings.php:844 ../../mod/admin.php:181 ../../mod/admin.php:635
msgid "Soapbox Account"
msgstr ""
-#: ../../mod/settings.php:840
+#: ../../mod/settings.php:845
msgid "Automatically approve all connection/friend requests as read-only fans"
msgstr ""
-#: ../../mod/settings.php:843 ../../mod/admin.php:182 ../../mod/admin.php:636
+#: ../../mod/settings.php:848 ../../mod/admin.php:182 ../../mod/admin.php:636
msgid "Community/Celebrity Account"
msgstr ""
-#: ../../mod/settings.php:844
+#: ../../mod/settings.php:849
msgid "Automatically approve all connection/friend requests as read-write fans"
msgstr ""
-#: ../../mod/settings.php:847 ../../mod/admin.php:183 ../../mod/admin.php:637
+#: ../../mod/settings.php:852 ../../mod/admin.php:183 ../../mod/admin.php:637
msgid "Automatic Friend Account"
msgstr ""
-#: ../../mod/settings.php:848
+#: ../../mod/settings.php:853
msgid "Automatically approve all connection/friend requests as friends"
msgstr ""
-#: ../../mod/settings.php:851
+#: ../../mod/settings.php:856
msgid "Private Forum"
msgstr ""
-#: ../../mod/settings.php:852
+#: ../../mod/settings.php:857
msgid "Private forum - approved members only [Experimental]"
msgstr ""
-#: ../../mod/settings.php:865
+#: ../../mod/settings.php:870
msgid "OpenID:"
msgstr ""
-#: ../../mod/settings.php:865
+#: ../../mod/settings.php:870
msgid "(Optional) Allow this OpenID to login to this account."
msgstr ""
-#: ../../mod/settings.php:875
+#: ../../mod/settings.php:880
msgid "Publish your default profile in your local site directory?"
msgstr ""
-#: ../../mod/settings.php:881
+#: ../../mod/settings.php:886
msgid "Publish your default profile in the global social directory?"
msgstr ""
-#: ../../mod/settings.php:889
+#: ../../mod/settings.php:894
msgid "Hide your contact/friend list from viewers of your default profile?"
msgstr ""
-#: ../../mod/settings.php:893
+#: ../../mod/settings.php:898
msgid "Hide your profile details from unknown viewers?"
msgstr ""
-#: ../../mod/settings.php:898
+#: ../../mod/settings.php:903
msgid "Allow friends to post to your profile page?"
msgstr ""
-#: ../../mod/settings.php:904
+#: ../../mod/settings.php:909
msgid "Allow friends to tag your posts?"
msgstr ""
-#: ../../mod/settings.php:910
+#: ../../mod/settings.php:915
msgid "Allow us to suggest you as a potential friend to new members?"
msgstr ""
-#: ../../mod/settings.php:916
+#: ../../mod/settings.php:921
msgid "Permit unknown people to send you private mail?"
msgstr ""
-#: ../../mod/settings.php:927
+#: ../../mod/settings.php:932
msgid "Profile is <strong>not published</strong>."
msgstr ""
-#: ../../mod/settings.php:933 ../../mod/profile_photo.php:211
+#: ../../mod/settings.php:938 ../../mod/profile_photo.php:211
msgid "or"
msgstr ""
-#: ../../mod/settings.php:938
+#: ../../mod/settings.php:943
msgid "Your Identity Address is"
msgstr ""
-#: ../../mod/settings.php:949
+#: ../../mod/settings.php:954
msgid "Automatically expire posts after this many days:"
msgstr ""
-#: ../../mod/settings.php:949
+#: ../../mod/settings.php:954
msgid "If empty, posts will not expire. Expired posts will be deleted"
msgstr ""
-#: ../../mod/settings.php:950
+#: ../../mod/settings.php:955
msgid "Advanced expiration settings"
msgstr ""
-#: ../../mod/settings.php:951
+#: ../../mod/settings.php:956
msgid "Advanced Expiration"
msgstr ""
-#: ../../mod/settings.php:952
+#: ../../mod/settings.php:957
msgid "Expire posts:"
msgstr ""
-#: ../../mod/settings.php:953
+#: ../../mod/settings.php:958
msgid "Expire personal notes:"
msgstr ""
-#: ../../mod/settings.php:954
+#: ../../mod/settings.php:959
msgid "Expire starred posts:"
msgstr ""
-#: ../../mod/settings.php:955
+#: ../../mod/settings.php:960
msgid "Expire photos:"
msgstr ""
-#: ../../mod/settings.php:962
+#: ../../mod/settings.php:961
+msgid "Only expire posts by others:"
+msgstr ""
+
+#: ../../mod/settings.php:968
msgid "Account Settings"
msgstr ""
-#: ../../mod/settings.php:970
+#: ../../mod/settings.php:976
msgid "Password Settings"
msgstr ""
-#: ../../mod/settings.php:971
+#: ../../mod/settings.php:977
msgid "New Password:"
msgstr ""
-#: ../../mod/settings.php:972
+#: ../../mod/settings.php:978
msgid "Confirm:"
msgstr ""
-#: ../../mod/settings.php:972
+#: ../../mod/settings.php:978
msgid "Leave password fields blank unless changing"
msgstr ""
-#: ../../mod/settings.php:976
+#: ../../mod/settings.php:982
msgid "Basic Settings"
msgstr ""
-#: ../../mod/settings.php:977 ../../include/profile_advanced.php:15
+#: ../../mod/settings.php:983 ../../include/profile_advanced.php:15
msgid "Full Name:"
msgstr ""
-#: ../../mod/settings.php:978
+#: ../../mod/settings.php:984
msgid "Email Address:"
msgstr ""
-#: ../../mod/settings.php:979
+#: ../../mod/settings.php:985
msgid "Your Timezone:"
msgstr ""
-#: ../../mod/settings.php:980
+#: ../../mod/settings.php:986
msgid "Default Post Location:"
msgstr ""
-#: ../../mod/settings.php:981
+#: ../../mod/settings.php:987
msgid "Use Browser Location:"
msgstr ""
-#: ../../mod/settings.php:984
+#: ../../mod/settings.php:990
msgid "Security and Privacy Settings"
msgstr ""
-#: ../../mod/settings.php:986
+#: ../../mod/settings.php:992
msgid "Maximum Friend Requests/Day:"
msgstr ""
-#: ../../mod/settings.php:986 ../../mod/settings.php:1005
+#: ../../mod/settings.php:992 ../../mod/settings.php:1011
msgid "(to prevent spam abuse)"
msgstr ""
-#: ../../mod/settings.php:987
+#: ../../mod/settings.php:993
msgid "Default Post Permissions"
msgstr ""
-#: ../../mod/settings.php:988
+#: ../../mod/settings.php:994
msgid "(click to open/close)"
msgstr ""
-#: ../../mod/settings.php:1005
+#: ../../mod/settings.php:1011
msgid "Maximum private messages per day from unknown people:"
msgstr ""
-#: ../../mod/settings.php:1008
+#: ../../mod/settings.php:1014
msgid "Notification Settings"
msgstr ""
-#: ../../mod/settings.php:1009
+#: ../../mod/settings.php:1015
msgid "By default post a status message when:"
msgstr ""
-#: ../../mod/settings.php:1010
+#: ../../mod/settings.php:1016
msgid "accepting a friend request"
msgstr ""
-#: ../../mod/settings.php:1011
+#: ../../mod/settings.php:1017
msgid "joining a forum/community"
msgstr ""
-#: ../../mod/settings.php:1012
+#: ../../mod/settings.php:1018
msgid "making an <em>interesting</em> profile change"
msgstr ""
-#: ../../mod/settings.php:1013
+#: ../../mod/settings.php:1019
msgid "Send a notification email when:"
msgstr ""
-#: ../../mod/settings.php:1014
+#: ../../mod/settings.php:1020
msgid "You receive an introduction"
msgstr ""
-#: ../../mod/settings.php:1015
+#: ../../mod/settings.php:1021
msgid "Your introductions are confirmed"
msgstr ""
-#: ../../mod/settings.php:1016
+#: ../../mod/settings.php:1022
msgid "Someone writes on your profile wall"
msgstr ""
-#: ../../mod/settings.php:1017
+#: ../../mod/settings.php:1023
msgid "Someone writes a followup comment"
msgstr ""
-#: ../../mod/settings.php:1018
+#: ../../mod/settings.php:1024
msgid "You receive a private message"
msgstr ""
-#: ../../mod/settings.php:1019
+#: ../../mod/settings.php:1025
msgid "You receive a friend suggestion"
msgstr ""
-#: ../../mod/settings.php:1020
+#: ../../mod/settings.php:1026
msgid "You are tagged in a post"
msgstr ""
-#: ../../mod/settings.php:1023
+#: ../../mod/settings.php:1029
msgid "Advanced Page Settings"
msgstr ""
@@ -2375,7 +2390,7 @@ msgstr ""
msgid "Invalid contact."
msgstr ""
-#: ../../mod/notes.php:44 ../../boot.php:1529
+#: ../../mod/notes.php:44 ../../boot.php:1526
msgid "Personal Notes"
msgstr ""
@@ -2626,7 +2641,7 @@ msgstr ""
#: ../../mod/profperm.php:103 ../../view/theme/diabook/theme.php:123
#: ../../include/profile_advanced.php:7 ../../include/profile_advanced.php:74
-#: ../../include/nav.php:50 ../../boot.php:1508
+#: ../../include/nav.php:50 ../../boot.php:1505
msgid "Profile"
msgstr ""
@@ -2798,7 +2813,7 @@ msgstr ""
msgid "Choose a nickname: "
msgstr ""
-#: ../../mod/register.php:546 ../../include/nav.php:81 ../../boot.php:795
+#: ../../mod/register.php:546 ../../include/nav.php:81 ../../boot.php:792
msgid "Register"
msgstr ""
@@ -2832,7 +2847,7 @@ msgstr ""
#: ../../mod/notice.php:15 ../../mod/viewsrc.php:15 ../../mod/admin.php:156
#: ../../mod/admin.php:697 ../../mod/admin.php:896 ../../mod/display.php:37
-#: ../../mod/display.php:142 ../../include/items.php:3096
+#: ../../mod/display.php:142 ../../include/items.php:3175
msgid "Item not found."
msgstr ""
@@ -2841,7 +2856,7 @@ msgid "Access denied."
msgstr ""
#: ../../mod/fbrowser.php:23 ../../view/theme/diabook/theme.php:125
-#: ../../include/nav.php:51 ../../boot.php:1514
+#: ../../include/nav.php:51 ../../boot.php:1511
msgid "Photos"
msgstr ""
@@ -2870,34 +2885,34 @@ msgstr ""
msgid "Empty post discarded."
msgstr ""
-#: ../../mod/item.php:377 ../../mod/wall_upload.php:99
+#: ../../mod/item.php:379 ../../mod/wall_upload.php:99
#: ../../mod/wall_upload.php:108 ../../mod/wall_upload.php:115
#: ../../include/message.php:144
msgid "Wall Photos"
msgstr ""
-#: ../../mod/item.php:786
+#: ../../mod/item.php:788
msgid "System error. Post not saved."
msgstr ""
-#: ../../mod/item.php:811
+#: ../../mod/item.php:813
#, php-format
msgid ""
"This message was sent to you by %s, a member of the Friendica social network."
msgstr ""
-#: ../../mod/item.php:813
+#: ../../mod/item.php:815
#, php-format
msgid "You may visit them online at %s"
msgstr ""
-#: ../../mod/item.php:814
+#: ../../mod/item.php:816
msgid ""
"Please contact the sender by replying to this post if you do not wish to "
"receive these messages."
msgstr ""
-#: ../../mod/item.php:816
+#: ../../mod/item.php:818
#, php-format
msgid "%s posted an update."
msgstr ""
@@ -3624,7 +3639,7 @@ msgstr ""
msgid "FTP Password"
msgstr ""
-#: ../../mod/profile.php:21 ../../boot.php:960
+#: ../../mod/profile.php:21 ../../boot.php:957
msgid "Requested profile is not available."
msgstr ""
@@ -3694,8 +3709,8 @@ msgid ""
"Account not found and OpenID registration is not permitted on this site."
msgstr ""
-#: ../../mod/openid.php:93 ../../include/auth.php:97
-#: ../../include/auth.php:160
+#: ../../mod/openid.php:93 ../../include/auth.php:99
+#: ../../include/auth.php:162
msgid "Login failed."
msgstr ""
@@ -3779,8 +3794,8 @@ msgstr ""
msgid "Search"
msgstr ""
-#: ../../mod/profiles.php:21 ../../mod/profiles.php:375
-#: ../../mod/profiles.php:489 ../../mod/dfrn_confirm.php:62
+#: ../../mod/profiles.php:21 ../../mod/profiles.php:384
+#: ../../mod/profiles.php:498 ../../mod/dfrn_confirm.php:62
msgid "Profile not found."
msgstr ""
@@ -3824,237 +3839,241 @@ msgstr ""
msgid "Interests"
msgstr ""
-#: ../../mod/profiles.php:181
+#: ../../mod/profiles.php:180
+msgid "Address"
+msgstr ""
+
+#: ../../mod/profiles.php:187
msgid "Location"
msgstr ""
-#: ../../mod/profiles.php:253
+#: ../../mod/profiles.php:262
msgid "Profile updated."
msgstr ""
-#: ../../mod/profiles.php:320
+#: ../../mod/profiles.php:329
msgid " and "
msgstr ""
-#: ../../mod/profiles.php:328
+#: ../../mod/profiles.php:337
msgid "public profile"
msgstr ""
-#: ../../mod/profiles.php:331
+#: ../../mod/profiles.php:340
#, php-format
msgid "%1$s changed %2$s to &ldquo;%3$s&rdquo;"
msgstr ""
-#: ../../mod/profiles.php:332
+#: ../../mod/profiles.php:341
#, php-format
msgid " - Visit %1$s's %2$s"
msgstr ""
-#: ../../mod/profiles.php:335
+#: ../../mod/profiles.php:344
#, php-format
msgid "%1$s has an updated %2$s, changing %3$s."
msgstr ""
-#: ../../mod/profiles.php:394
+#: ../../mod/profiles.php:403
msgid "Profile deleted."
msgstr ""
-#: ../../mod/profiles.php:412 ../../mod/profiles.php:446
+#: ../../mod/profiles.php:421 ../../mod/profiles.php:455
msgid "Profile-"
msgstr ""
-#: ../../mod/profiles.php:431 ../../mod/profiles.php:473
+#: ../../mod/profiles.php:440 ../../mod/profiles.php:482
msgid "New profile created."
msgstr ""
-#: ../../mod/profiles.php:452
+#: ../../mod/profiles.php:461
msgid "Profile unavailable to clone."
msgstr ""
-#: ../../mod/profiles.php:510
+#: ../../mod/profiles.php:519
msgid "Hide your contact/friend list from viewers of this profile?"
msgstr ""
-#: ../../mod/profiles.php:533
+#: ../../mod/profiles.php:542
msgid "Edit Profile Details"
msgstr ""
-#: ../../mod/profiles.php:535
+#: ../../mod/profiles.php:544
msgid "View this profile"
msgstr ""
-#: ../../mod/profiles.php:536
+#: ../../mod/profiles.php:545
msgid "Create a new profile using these settings"
msgstr ""
-#: ../../mod/profiles.php:537
+#: ../../mod/profiles.php:546
msgid "Clone this profile"
msgstr ""
-#: ../../mod/profiles.php:538
+#: ../../mod/profiles.php:547
msgid "Delete this profile"
msgstr ""
-#: ../../mod/profiles.php:539
+#: ../../mod/profiles.php:548
msgid "Profile Name:"
msgstr ""
-#: ../../mod/profiles.php:540
+#: ../../mod/profiles.php:549
msgid "Your Full Name:"
msgstr ""
-#: ../../mod/profiles.php:541
+#: ../../mod/profiles.php:550
msgid "Title/Description:"
msgstr ""
-#: ../../mod/profiles.php:542
+#: ../../mod/profiles.php:551
msgid "Your Gender:"
msgstr ""
-#: ../../mod/profiles.php:543
+#: ../../mod/profiles.php:552
#, php-format
msgid "Birthday (%s):"
msgstr ""
-#: ../../mod/profiles.php:544
+#: ../../mod/profiles.php:553
msgid "Street Address:"
msgstr ""
-#: ../../mod/profiles.php:545
+#: ../../mod/profiles.php:554
msgid "Locality/City:"
msgstr ""
-#: ../../mod/profiles.php:546
+#: ../../mod/profiles.php:555
msgid "Postal/Zip Code:"
msgstr ""
-#: ../../mod/profiles.php:547
+#: ../../mod/profiles.php:556
msgid "Country:"
msgstr ""
-#: ../../mod/profiles.php:548
+#: ../../mod/profiles.php:557
msgid "Region/State:"
msgstr ""
-#: ../../mod/profiles.php:549
+#: ../../mod/profiles.php:558
msgid "<span class=\"heart\">&hearts;</span> Marital Status:"
msgstr ""
-#: ../../mod/profiles.php:550
+#: ../../mod/profiles.php:559
msgid "Who: (if applicable)"
msgstr ""
-#: ../../mod/profiles.php:551
+#: ../../mod/profiles.php:560
msgid "Examples: cathy123, Cathy Williams, cathy@example.com"
msgstr ""
-#: ../../mod/profiles.php:552 ../../include/profile_advanced.php:43
+#: ../../mod/profiles.php:561 ../../include/profile_advanced.php:43
msgid "Sexual Preference:"
msgstr ""
-#: ../../mod/profiles.php:553
+#: ../../mod/profiles.php:562
msgid "Homepage URL:"
msgstr ""
-#: ../../mod/profiles.php:554 ../../include/profile_advanced.php:49
+#: ../../mod/profiles.php:563 ../../include/profile_advanced.php:49
msgid "Political Views:"
msgstr ""
-#: ../../mod/profiles.php:555
+#: ../../mod/profiles.php:564
msgid "Religious Views:"
msgstr ""
-#: ../../mod/profiles.php:556
+#: ../../mod/profiles.php:565
msgid "Public Keywords:"
msgstr ""
-#: ../../mod/profiles.php:557
+#: ../../mod/profiles.php:566
msgid "Private Keywords:"
msgstr ""
-#: ../../mod/profiles.php:558
+#: ../../mod/profiles.php:567
msgid "Example: fishing photography software"
msgstr ""
-#: ../../mod/profiles.php:559
+#: ../../mod/profiles.php:568
msgid "(Used for suggesting potential friends, can be seen by others)"
msgstr ""
-#: ../../mod/profiles.php:560
+#: ../../mod/profiles.php:569
msgid "(Used for searching profiles, never shown to others)"
msgstr ""
-#: ../../mod/profiles.php:561
+#: ../../mod/profiles.php:570
msgid "Tell us about yourself..."
msgstr ""
-#: ../../mod/profiles.php:562
+#: ../../mod/profiles.php:571
msgid "Hobbies/Interests"
msgstr ""
-#: ../../mod/profiles.php:563
+#: ../../mod/profiles.php:572
msgid "Contact information and Social Networks"
msgstr ""
-#: ../../mod/profiles.php:564
+#: ../../mod/profiles.php:573
msgid "Musical interests"
msgstr ""
-#: ../../mod/profiles.php:565
+#: ../../mod/profiles.php:574
msgid "Books, literature"
msgstr ""
-#: ../../mod/profiles.php:566
+#: ../../mod/profiles.php:575
msgid "Television"
msgstr ""
-#: ../../mod/profiles.php:567
+#: ../../mod/profiles.php:576
msgid "Film/dance/culture/entertainment"
msgstr ""
-#: ../../mod/profiles.php:568
+#: ../../mod/profiles.php:577
msgid "Love/romance"
msgstr ""
-#: ../../mod/profiles.php:569
+#: ../../mod/profiles.php:578
msgid "Work/employment"
msgstr ""
-#: ../../mod/profiles.php:570
+#: ../../mod/profiles.php:579
msgid "School/education"
msgstr ""
-#: ../../mod/profiles.php:575
+#: ../../mod/profiles.php:584
msgid ""
"This is your <strong>public</strong> profile.<br />It <strong>may</strong> "
"be visible to anybody using the internet."
msgstr ""
-#: ../../mod/profiles.php:585 ../../mod/directory.php:111
+#: ../../mod/profiles.php:594 ../../mod/directory.php:111
msgid "Age: "
msgstr ""
-#: ../../mod/profiles.php:620
+#: ../../mod/profiles.php:629
msgid "Edit/Manage Profiles"
msgstr ""
-#: ../../mod/profiles.php:621 ../../boot.php:1069
+#: ../../mod/profiles.php:630 ../../boot.php:1066
msgid "Change profile photo"
msgstr ""
-#: ../../mod/profiles.php:622 ../../boot.php:1070
+#: ../../mod/profiles.php:631 ../../boot.php:1067
msgid "Create New Profile"
msgstr ""
-#: ../../mod/profiles.php:633 ../../boot.php:1080
+#: ../../mod/profiles.php:642 ../../boot.php:1077
msgid "Profile Image"
msgstr ""
-#: ../../mod/profiles.php:635 ../../boot.php:1083
+#: ../../mod/profiles.php:644 ../../boot.php:1080
msgid "visible to everybody"
msgstr ""
-#: ../../mod/profiles.php:636 ../../boot.php:1084
+#: ../../mod/profiles.php:645 ../../boot.php:1081
msgid "Edit visibility"
msgstr ""
@@ -4662,7 +4681,7 @@ msgstr ""
#: ../../addon/page/page.php:63 ../../addon/showmore/showmore.php:87
#: ../../include/contact_widgets.php:188 ../../include/conversation.php:470
-#: ../../boot.php:518
+#: ../../boot.php:515
msgid "show more"
msgstr ""
@@ -4678,7 +4697,7 @@ msgstr ""
#: ../../addon/communityhome/communityhome.php:34
#: ../../addon/communityhome/twillingham/communityhome.php:28
#: ../../addon/communityhome/twillingham/communityhome.php:34
-#: ../../include/nav.php:64 ../../boot.php:816
+#: ../../include/nav.php:64 ../../boot.php:813
msgid "Login"
msgstr ""
@@ -5855,7 +5874,7 @@ msgstr ""
msgid "Set colour scheme"
msgstr ""
-#: ../../include/profile_advanced.php:17 ../../boot.php:1105
+#: ../../include/profile_advanced.php:17 ../../boot.php:1102
msgid "Gender:"
msgstr ""
@@ -5876,11 +5895,11 @@ msgstr ""
msgid "Age:"
msgstr ""
-#: ../../include/profile_advanced.php:37 ../../boot.php:1108
+#: ../../include/profile_advanced.php:37 ../../boot.php:1105
msgid "Status:"
msgstr ""
-#: ../../include/profile_advanced.php:45 ../../boot.php:1110
+#: ../../include/profile_advanced.php:45 ../../boot.php:1107
msgid "Homepage:"
msgstr ""
@@ -6060,187 +6079,187 @@ msgstr ""
msgid "Undecided"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "Males"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "Females"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "Gay"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "Lesbian"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "No Preference"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "Bisexual"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "Autosexual"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "Abstinent"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "Virgin"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "Deviant"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "Fetish"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "Oodles"
msgstr ""
-#: ../../include/profile_selectors.php:21
+#: ../../include/profile_selectors.php:23
msgid "Nonsexual"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Single"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Lonely"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Available"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Unavailable"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Has crush"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Infatuated"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Dating"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Unfaithful"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Sex Addict"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Friends"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Friends/Benefits"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Casual"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Engaged"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Married"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Imaginarily married"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Partners"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Cohabiting"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Common law"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Happy"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Not looking"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Swinger"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Betrayed"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Separated"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Unstable"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Divorced"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Imaginarily divorced"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Widowed"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Uncertain"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "It's complicated"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Don't care"
msgstr ""
-#: ../../include/profile_selectors.php:37
+#: ../../include/profile_selectors.php:42
msgid "Ask me"
msgstr ""
-#: ../../include/event.php:17 ../../include/bb2diaspora.php:244
+#: ../../include/event.php:17 ../../include/bb2diaspora.php:249
msgid "Starts:"
msgstr ""
-#: ../../include/event.php:27 ../../include/bb2diaspora.php:252
+#: ../../include/event.php:27 ../../include/bb2diaspora.php:257
msgid "Finishes:"
msgstr ""
@@ -6464,7 +6483,7 @@ msgstr ""
msgid "Contacts not in any group"
msgstr ""
-#: ../../include/nav.php:46 ../../boot.php:815
+#: ../../include/nav.php:46 ../../boot.php:812
msgid "Logout"
msgstr ""
@@ -6472,7 +6491,7 @@ msgstr ""
msgid "End this session"
msgstr ""
-#: ../../include/nav.php:49 ../../boot.php:1502
+#: ../../include/nav.php:49 ../../boot.php:1499
msgid "Status"
msgstr ""
@@ -6552,11 +6571,11 @@ msgstr ""
msgid "Manage other pages"
msgstr ""
-#: ../../include/nav.php:138 ../../boot.php:1063
+#: ../../include/nav.php:138 ../../boot.php:1060
msgid "Profiles"
msgstr ""
-#: ../../include/nav.php:138 ../../boot.php:1063
+#: ../../include/nav.php:138 ../../boot.php:1060
msgid "Manage/edit profiles"
msgstr ""
@@ -6639,13 +6658,13 @@ msgstr ""
msgid "Logged out."
msgstr ""
-#: ../../include/auth.php:113
+#: ../../include/auth.php:115
msgid ""
"We encountered a problem while logging in with the OpenID you provided. "
"Please check the correct spelling of the ID."
msgstr ""
-#: ../../include/auth.php:113
+#: ../../include/auth.php:115
msgid "The error message was:"
msgstr ""
@@ -7223,96 +7242,96 @@ msgstr ""
msgid "permissions"
msgstr ""
-#: ../../boot.php:516
+#: ../../boot.php:513
msgid "Delete this item?"
msgstr ""
-#: ../../boot.php:519
+#: ../../boot.php:516
msgid "show fewer"
msgstr ""
-#: ../../boot.php:692
+#: ../../boot.php:689
#, php-format
msgid "Update %s failed. See error logs."
msgstr ""
-#: ../../boot.php:694
+#: ../../boot.php:691
#, php-format
msgid "Update Error at %s"
msgstr ""
-#: ../../boot.php:794
+#: ../../boot.php:791
msgid "Create a New Account"
msgstr ""
-#: ../../boot.php:818
+#: ../../boot.php:815
msgid "Nickname or Email address: "
msgstr ""
-#: ../../boot.php:819
+#: ../../boot.php:816
msgid "Password: "
msgstr ""
-#: ../../boot.php:822
+#: ../../boot.php:819
msgid "Or login using OpenID: "
msgstr ""
-#: ../../boot.php:828
+#: ../../boot.php:825
msgid "Forgot your password?"
msgstr ""
-#: ../../boot.php:995
+#: ../../boot.php:992
msgid "Edit profile"
msgstr ""
-#: ../../boot.php:1055
+#: ../../boot.php:1052
msgid "Message"
msgstr ""
-#: ../../boot.php:1171 ../../boot.php:1247
+#: ../../boot.php:1168 ../../boot.php:1244
msgid "g A l F d"
msgstr ""
-#: ../../boot.php:1172 ../../boot.php:1248
+#: ../../boot.php:1169 ../../boot.php:1245
msgid "F d"
msgstr ""
-#: ../../boot.php:1217 ../../boot.php:1288
+#: ../../boot.php:1214 ../../boot.php:1285
msgid "[today]"
msgstr ""
-#: ../../boot.php:1229
+#: ../../boot.php:1226
msgid "Birthday Reminders"
msgstr ""
-#: ../../boot.php:1230
+#: ../../boot.php:1227
msgid "Birthdays this week:"
msgstr ""
-#: ../../boot.php:1281
+#: ../../boot.php:1278
msgid "[No description]"
msgstr ""
-#: ../../boot.php:1299
+#: ../../boot.php:1296
msgid "Event Reminders"
msgstr ""
-#: ../../boot.php:1300
+#: ../../boot.php:1297
msgid "Events this week:"
msgstr ""
-#: ../../boot.php:1505
+#: ../../boot.php:1502
msgid "Status Messages and Posts"
msgstr ""
-#: ../../boot.php:1511
+#: ../../boot.php:1508
msgid "Profile Details"
msgstr ""
-#: ../../boot.php:1526
+#: ../../boot.php:1523
msgid "Events and Calendar"
msgstr ""
-#: ../../boot.php:1532
+#: ../../boot.php:1529
msgid "Only You Can See This"
msgstr ""
diff --git a/view/dfrn_req_confirm.tpl b/view/dfrn_req_confirm.tpl
index 58e9233aa..6c916323c 100644
--- a/view/dfrn_req_confirm.tpl
+++ b/view/dfrn_req_confirm.tpl
@@ -11,6 +11,10 @@ $please
<input type="hidden" name="localconfirm" value="1" />
$aes_allow
+<label id="dfrn-request-homecoming-hide-label" for="dfrn-request-homecoming-hide">$hidethem</label>
+<input type="checkbox" name="hidden-contact" value="1" {{ if $hidechecked }}checked="checked" {{ endif }} />
+
+
<div id="dfrn-request-homecoming-submit-wrapper" >
<input id="dfrn-request-homecoming-submit" type="submit" name="submit" value="$submit" />
</div>
diff --git a/view/generic_links_widget.tpl b/view/generic_links_widget.tpl
index 45813b876..f3404f783 100644
--- a/view/generic_links_widget.tpl
+++ b/view/generic_links_widget.tpl
@@ -1,4 +1,4 @@
-<div class="widget">
+<div class="widget{{ if $class }} $class{{ endif }}">
{{if $title}}<h3>$title</h3>{{endif}}
{{if $desc}}<div class="desc">$desc</div>{{endif}}
diff --git a/view/settings.tpl b/view/settings.tpl
index 556cd3ba3..d61af072f 100644
--- a/view/settings.tpl
+++ b/view/settings.tpl
@@ -70,6 +70,7 @@ $unkmail
{{ inc field_yesno.tpl with $field=$expire.items }}{{endinc}}
{{ inc field_yesno.tpl with $field=$expire.notes }}{{endinc}}
{{ inc field_yesno.tpl with $field=$expire.starred }}{{endinc}}
+ {{ inc field_yesno.tpl with $field=$expire.network_only }}{{endinc}}
</div>
</div>
diff --git a/view/theme/diabook/theme.php b/view/theme/diabook/theme.php
index de7e41841..83079782e 100755
--- a/view/theme/diabook/theme.php
+++ b/view/theme/diabook/theme.php
@@ -18,6 +18,11 @@ $a->page['htmlhead'] .= sprintf('<META NAME=generator CONTENT="%s"/>', $diabook_
//init css on network and profilepages
$cssFile = null;
+
+// Preload config
+load_config("diabook");
+load_pconfig(local_user(), "diabook");
+
//get statuses of boxes at right-hand-column
$close_pages = false;
$site_close_pages = get_config("diabook", "close_pages" );
diff --git a/view/theme/dispy/communityhome.tpl b/view/theme/dispy/communityhome.tpl
index 4d09b9255..aaa27465b 100644
--- a/view/theme/dispy/communityhome.tpl
+++ b/view/theme/dispy/communityhome.tpl
@@ -2,7 +2,6 @@
<div>$page</div>
{{ endif }}
-{{ if $lastusers_title }}
<h3 id="extra-help-header">Help or '@NewHere'?</h3>
<div id="extra-help">
<a href="https://helpers.pyxis.uberspace.de/profile/helpers"
@@ -13,27 +12,24 @@
title="Local Friendica" target="_blank">Local Friendica</a><br />
<a href="http://kakste.com/profile/newhere" title="@NewHere" target="_blank">NewHere</a>
</div>
-{{ endif }}
-{{ if $lastusers_title }}
<h3 id="connect-services-header">Connectable Services</h3>
-<div id="connect-services">
-<a href="$url/facebook"><img alt="Facebook"
- src="view/theme/dispy/icons/facebook.png" title="Facebook" /></a>
-<a href="$url/settings/connectors"><img
- alt="StatusNet" src="view/theme/dispy/icons/StatusNet.png?" title="StatusNet" /></a>
-<a href="$url/settings/connectors"><img
- alt="LiveJournal" src="view/theme/dispy/icons/livejournal.png?" title="LiveJournal" /></a>
-<a href="$url/settings/connectors"><img
- alt="Posterous" src="view/theme/dispy/icons/posterous.png?" title="Posterous" /></a><br />
-<a href="$url/settings/connectors"><img
- alt="Tumblr" src="view/theme/dispy/icons/tumblr.png?" title="Tumblr" /></a>
-<a href="$url/settings/connectors"><img
- alt="Twitter" src="view/theme/dispy/icons/twitter.png?" title="Twitter" /></a>
-<a href="$url/settings/connectors"><img
- alt="WordPress" src="view/theme/dispy/icons/wordpress.png?" title="WordPress" /></a>
-<a href="$url/settings/connectors"><img
- alt="E-Mail" src="view/theme/dispy/icons/email.png?" title="E-Mail" /></a>
-</div>
-{{ endif }}
+<ul id="connect-services">
+<li><a href="$url/facebook"><img alt="Facebook"
+ src="view/theme/dispy/icons/facebook.png" title="Facebook" /></a></li>
+<li><a href="$url/settings/connectors"><img
+ alt="StatusNet" src="view/theme/dispy/icons/StatusNet.png" title="StatusNet" /></a></li>
+<li><a href="$url/settings/connectors"><img
+ alt="LiveJournal" src="view/theme/dispy/icons/livejournal.png" title="LiveJournal" /></a></li>
+<li><a href="$url/settings/connectors"><img
+ alt="Posterous" src="view/theme/dispy/icons/posterous.png" title="Posterous" /></a></li>
+<li><a href="$url/settings/connectors"><img
+ alt="Tumblr" src="view/theme/dispy/icons/tumblr.png" title="Tumblr" /></a></li>
+<li><a href="$url/settings/connectors"><img
+ alt="Twitter" src="view/theme/dispy/icons/twitter.png" title="Twitter" /></a></li>
+<li><a href="$url/settings/connectors"><img
+ alt="WordPress" src="view/theme/dispy/icons/wordpress.png" title="WordPress" /></a></li>
+<li><a href="$url/settings/connectors"><img
+ alt="E-Mail" src="view/theme/dispy/icons/email.png" title="E-Mail" /></a></li>
+</ul>
diff --git a/view/theme/dispy/config.php b/view/theme/dispy/config.php
index a24288bf8..25663c10b 100644
--- a/view/theme/dispy/config.php
+++ b/view/theme/dispy/config.php
@@ -41,17 +41,17 @@ function theme_admin_post(&$a) {
function dispy_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",
+ "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',
+ '14' => '14',
"---" => "---",
"16" => "16",
"15" => "15",
diff --git a/view/theme/dispy/conversation.tpl b/view/theme/dispy/conversation.tpl
index 41b6aeadf..c49cdf26b 100644
--- a/view/theme/dispy/conversation.tpl
+++ b/view/theme/dispy/conversation.tpl
@@ -18,6 +18,7 @@
{{ if $dropping }}
<div class="delete-checked">
-<a href="#" onclick="deleteCheckedItems();return false;"><span class="icon delete"></span><span class="s22 text">$dropping</span></a>
+<a href="#" onclick="deleteCheckedItems();return false;"><span class="icon delete"></span><span class="s22 text" onmouseover="imgbright(this);" onmouseout="imgdull(this);">$dropping</span></a>
</div>
+<div id="item-delete-selected-end"></div>
{{ endif }}
diff --git a/view/theme/dispy/dark/_base.less b/view/theme/dispy/dark/_base.less
index 000cdbd5a..d1051a989 100644
--- a/view/theme/dispy/dark/_base.less
+++ b/view/theme/dispy/dark/_base.less
@@ -17,6 +17,7 @@
@import "../css/reset";
//* backgrounds */
+@lt_bg_colour: lighten(@bg_colour, 10%);
@dk_bg_colour: #1d1f1d;
@bg_colour: #2e2f2e;
@bg_alt_colour: #2e302e;
@@ -24,8 +25,9 @@
@menu_bg_colour: #555753;
//* font colour, aka color: */
-@lt_main_colour: #ffff99;
+@lt_main_colour: lighten(@main_colour, 10%);
@main_colour: #eeeecc;
+@dk_main_colour: darken(@main_colour, 20%);
@main_alt_colour: #eeeeee;
// darken(@main_alt_colour, 13%) > #cdcdcd
// darken(@main_alt_colour, 13.5%) > #cccccc
@@ -56,9 +58,6 @@
@info: #1353b1;
@alert: #ff0000;
-@lt_main_colour: lighten(@bg_colour, 10%);
-@dk_main_colour: darken(@bg_colour, 10%);
-
//* links */
@link_colour: #88a9d2;
@dk_link_colour: darken(@link_colour, 10%);
@@ -137,7 +136,19 @@
-webkit-text-overflow: @t;
text-overflow: @t;
}
-
+.lin_gradient(@x1: left, @x2: right, @y1: top, @y2: bottom, @c1: @bg_colour, @c2: @dk_bg_colour) {
+ // w3c
+ background: linear-gradient(@x1 @y2, @c1, @c2);
+ // webkit
+ // -webkit-gradient(<type>, <point> [, <radius>]?, <point> [, <radius>]? [, <stop>]*)
+ background: -webkit-gradient(linear, @x1 @y1, @x2 @y2, from(@c1), to(@c2));
+ // mozilla
+ // -moz-linear-gradient([<point> || <angle>,]? <stop>, <stop> [, <stop>])
+ background: -moz-linear-gradient(@x1 @y2, @c1, @c2);
+ // opera
+ //background: -o-linear-gradient([<point> || <angle>,]? <stop>, <stop> [, <stop>]);
+ background: -o-linear-gradient(@x1, @c1, @c2);
+}
//* pre wrap */
.wrap () {
white-space: pre-wrap;
diff --git a/view/theme/dispy/dark/style.css b/view/theme/dispy/dark/style.css
index 029722c3a..82118275a 100644
--- a/view/theme/dispy/dark/style.css
+++ b/view/theme/dispy/dark/style.css
@@ -20,7 +20,7 @@ tr:nth-child(even){background-color:#474947;}
:focus{outline:none;}
a:focus{outline:invert, dashed, thin;}
[disabled="disabled"]{background:#4e4f4e;color:#ddddbb;}
-ins,mark{background-color:#2e302e;color:#474947;}
+ins,mark{background-color:#2e302e;color:#fbfbf2;}
ins{text-decoration:none;}
mark{font-style:italic;font-weight:bold;}
pre,code,kbd,samp,.wall-item-body code{font-family:monospace, monospace;_font-family:monospace;font-size:1em;}
@@ -58,7 +58,7 @@ h6{font-size:xx-small;}
#articlemain{width:100%;height:100%;margin:0 auto;}
.button{color:#eeeecc;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;padding:5px;cursor:pointer;}.button a{color:#eeeecc;font-weight:bold;}
#profile-listing-desc a{color:#eeeecc;font-weight:bold;}
-[class$="-desc"],[id$="-desc"]{color:#eeeecc;background:#2e2f2e;border:3px ridge #eeeecc;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;margin:3px 10px 7px 0;padding:5px;font-weight:bold;font-size:smaller;}
+[class$="-desc"],[id$="-desc"]{color:#eeeecc;background:#2e2f2e;border:2px outset #d4d580;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;margin:3px 10px 7px 0;padding:5px;font-weight:bold;font-size:smaller;}
#item-delete-selected-desc{float:left;margin-right:5px;}#item-delete-selected-desc:hover{text-decoration:underline;}
.intro-approve-as-friend-desc{margin-top:10px;}
.intro-desc{margin-bottom:20px;font-weight:bold;}
@@ -103,7 +103,7 @@ div.jGrowl div.info{background:#1353b1 url("../../../images/icons/48/info.png")
nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkmenu.selected .icon.s22.notify{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAQAAABuvaSwAAAAAmJLR0QA/4ePzL8AAAAJcEhZcwAAUJcAAFCXAZtv64UAAAHuSURBVCjPbZPbTlNBFIYHLixXRIhEQGNRMUopJAJyAyZ4Z2l8B+XwEBqKtjwOp8oDIAJKIJFUjdFIQCUYrRytdyb0459ht8wG9rrYs9b618y/TsYEH4ZK4qRYYIdDybZOI7TKakIfVhrJ8J2i5IBNyV93/kaaBuv3oV3MgwCTPKGHPkkPA0xRUMBrOgN4AP0o6BseEpF2m3es0qJTFQneyvMhgDsC9tZprnEcGuOPeMcDLUpW3jlLxlDBmJTFY6gLvsVv8tyh9G7U3Z6mwtCuJAoiECSh/w1+8otmTjLqF2KDNsNzRY1bruV0o6rFFtc9S5USh5RRWvAYv4xX9dYPS8ur1oBQC4Y99m2uHriRNda5ErLdU1l3jCI2xdJ3XOYLX6kP2W6K2OF54Et84jN154F31d6ukKOG92pSbcjWLRrbRhVGLTZeOtXqX46LoQSHhJo3jOo3ESrdBQbljIRKNyXUiKHNNSXhTdbZiUzyT/WJ23Zn3BBFy+2u4ZHc1eV2N7EkxAvbbqMRmZOSlbE0g/uajRgl6Iy8r1wpnaFTQ4ji+8XOEsuxYmdDWpJleXJ0+BPdoduL4p5Vavd5IOllmJfiWmSWu6d3pV4jteFWqaAGbLkdKSqtUXXUnN3DSvF8phfy/JfkxfOp9sVb2COz+hY/T0qkwwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxMS0wOS0xNlQwOTozOTowMCswMjowMC9Oi90AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTEtMDktMTZUMDk6Mzk6MDArMDI6MDBeEzNhAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAABJRU5ErkJggg==");}
.show{display:block;}
#notifications{width:170px;height:20px;font-size:small;top:-19px;left:4px;position:absolute;}
-#nav-floater{position:fixed;top:20px;right:1%;padding:5px;background:#1d1f1d;color:transparent;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;z-index:100;width:300px;height:60px;}
+#nav-floater{position:fixed;top:20px;right:1%;padding:5px;background:#1d1f1d;color:transparent;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;z-index:100;width:270px;height:60px;}
#nav-buttons{clear:both;list-style:none;padding:0px;margin:0px;height:25px;}#nav-buttons>li{padding:0;display:inline-block;margin:0px -4px 0px 0px;}
.floaterflip{display:block;position:fixed;z-index:110;top:56px;right:19px;width:22px;height:22px;overflow:hidden;margin:0px;background:transparent url(dark/icons.png) -190px -60px no-repeat;}
.search-box{display:inline-block;margin:5px;position:fixed;right:0px;bottom:0px;z-index:100;background:#1d1f1d;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;}
@@ -111,7 +111,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
#search-text{border:1px solid #eeeeee;margin:5px 0;}
#mini-search-text{font-size:8pt;height:14px;width:10em;margin:5px;}
#scrollup{position:fixed;right:5px;bottom:40px;z-index:100;}#scrollup a:hover{text-decoration:none;border:0;}
-#user-menu{-moz-box-shadow:5px 0 10px 0 #111111;-o-box-shadow:5px 0 10px 0 #111111;-webkit-box-shadow:5px 0 10px 0 #111111;-ms-box-shadow:5px 0 10px 0 #111111;box-shadow:5px 0 10px 0 #111111;display:block;width:75%;margin:3px 0 0 0;position:relative;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;background-color:#555753;background-image:url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gATQ3JlYXRlZCB3aXRoIEdJTVD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAIAAwDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAMH/8QAIhAAAQMEAgIDAAAAAAAAAAAAAQIDBAAFBhESIQdBMVFh/8QAFQEBAQAAAAAAAAAAAAAAAAAAAgP/xAAXEQEBAQEAAAAAAAAAAAAAAAABAAIR/9oADAMBAAIRAxEAPwCXiHO8dbsEi35BEhIehNlbUhxhBU82O+G9bKgToD2D+VlmZX9OWZBJuAiMxGlni0w0gJCED4HXv7pSi6eFML//2Q==");background-position:98% center;background-repeat:no-repeat;clear:both;top:4px;left:10px;padding:2px;}#user-menu>a{vertical-align:top;outline:0 none;}
+#user-menu{-moz-box-shadow:5px 0 10px 0 #111111;-o-box-shadow:5px 0 10px 0 #111111;-webkit-box-shadow:5px 0 10px 0 #111111;-ms-box-shadow:5px 0 10px 0 #111111;box-shadow:5px 0 10px 0 #111111;display:block;width:80%;margin:3px 0 0 0;position:relative;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;background-color:#555753;background-image:url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gATQ3JlYXRlZCB3aXRoIEdJTVD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAIAAwDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAMH/8QAIhAAAQMEAgIDAAAAAAAAAAAAAQIDBAAFBhESIQdBMVFh/8QAFQEBAQAAAAAAAAAAAAAAAAAAAgP/xAAXEQEBAQEAAAAAAAAAAAAAAAABAAIR/9oADAMBAAIRAxEAPwCXiHO8dbsEi35BEhIehNlbUhxhBU82O+G9bKgToD2D+VlmZX9OWZBJuAiMxGlni0w0gJCED4HXv7pSi6eFML//2Q==");background-position:98% center;background-repeat:no-repeat;clear:both;top:4px;left:10px;padding:2px;}#user-menu>a{vertical-align:top;outline:0 none;}
#user-menu-label{font-size:small;padding:3px 20px 9px 5px;height:10px;}
.nav-ajax-update,.nav-ajax-left{width:30px;height:19px;background:transparent url(dark/notifications.png) 0 0 no-repeat;color:#111111;font-weight:bold;font-size:0.8em;padding-top:0.2em;text-align:center;float:left;margin:0 -1px 0 3px;display:block;visibility:hidden;}
.nav-ajax-update.show,.nav-ajax-left.show{visibility:visible;}
@@ -133,7 +133,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
#sysmsg_info{position:fixed;bottom:0;-moz-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-o-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-webkit-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-ms-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;padding:10px;background-color:#fcaf3e;border:2px solid #f8911b;border-bottom:0;padding-bottom:50px;z-index:1000;}
#sysmsg{position:fixed;bottom:0;-moz-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-o-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-webkit-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-ms-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;padding:10px;background-color:#fcaf3e;border:2px solid #f8911b;border-bottom:0;padding-bottom:50px;z-index:1000;}
#sysmsg_info br,#sysmsg br{display:block;margin:2px 0px;border-top:1px solid #eeeecc;}
-#asidemain{float:left;font-size:small;margin:20px 0 20px 35px;width:25%;display:inline;}
+#asidemain{float:left;font-size:small;margin:1em;width:25%;display:inline;}
#asideright,#asideleft{display:none;}
.vcard .fn{font-size:1.5em;font-weight:bold;border-bottom:1px solid #638ec4;padding-bottom:3px;}
.vcard #profile-photo-wrapper{margin:20px 0;background-color:#555753;padding:5px;width:175px;height:175px;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;-moz-box-shadow:3px 3px 10px 0 #111111;-o-box-shadow:3px 3px 10px 0 #111111;-webkit-box-shadow:3px 3px 10px 0 #111111;-ms-box-shadow:3px 3px 10px 0 #111111;box-shadow:3px 3px 10px 0 #111111;}
@@ -187,7 +187,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
#jot-title-display{font-weight:bold;}
.jothidden{display:none;}
#jot-preview-content{background-color:#2e3436;color:#eeeecc;border:1px solid #2e2f2e;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;-moz-box-shadow:5px 0 10px 0px #111111;-o-box-shadow:5px 0 10px 0px #111111;-webkit-box-shadow:5px 0 10px 0px #111111;-ms-box-shadow:5px 0 10px 0px #111111;box-shadow:5px 0 10px 0px #111111;padding:3px 3px 6px 10px;}#jot-preview-content .wall-item-outside-wrapper{border:0;-o-border-radius:0px 0px 0px 0px;-webkit-border-radius:0px 0px 0px 0px;-moz-border-radius:0px 0px 0px 0px;-ms-border-radius:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;-moz-box-shadow:0 0 0 0 #111111;-o-box-shadow:0 0 0 0 #111111;-webkit-box-shadow:0 0 0 0 #111111;-ms-box-shadow:0 0 0 0 #111111;box-shadow:0 0 0 0 #111111;}
-#sectionmain{margin:20px;font-size:0.8em;min-width:475px;width:67%;float:left;display:inline;}
+#sectionmain{margin:1em;font-size:0.8em;min-width:475px;width:69%;float:left;display:inline;}
.tabs{margin:0px;padding:0px;list-style:none;list-style-position:inside;margin:10px 0;}.tabs li{display:inline;font-size:smaller;}
.tab{border:1px solid #638ec4;padding:4px;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;}.tab:active,.tab:hover{background:#2e3436;color:#eeeecc;border:1px solid #638ec4;}
.tab a{border:0;text-decoration:none;}
@@ -203,7 +203,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
[id^="tread-wrapper"],[class^="tread-wrapper"]{margin:1.2em 0 0 0;padding:0px;}
.wall-item-photo-menu{display:none;}
.wall-item-photo-menu-button{display:none;text-indent:-99999px;background:#555753 url(dark/menu-user-pin.jpg) no-repeat 75px center;position:absolute;overflow:hidden;width:90px;height:20px;top:85px;left:0;-o-border-radius:0 0 5px 5px;-webkit-border-radius:0 0 5px 5px;-moz-border-radius:0 0 5px 5px;-ms-border-radius:0 0 5px 5px;border-radius:0 0 5px 5px;}
-.wall-item-info{float:left;width:8em;position:relative;}
+.wall-item-info{float:left;width:7em;position:relative;}
.wall-item-photo-wrapper{width:80px;height:80px;position:relative;padding:5px;background-color:#555753;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;}
[class^="wall-item-tools"] *{}[class^="wall-item-tools"] *>*{}
.wall-item-tools{float:right;opacity:0.4;-webkit-transition:all 0.75s ease-in-out;-moz-transition:all 0.75s ease-in-out;-o-transition:all 0.75s ease-in-out;-ms-transition:all 0.75s ease-in-out;transition:all 0.75s ease-in-out;}.wall-item-tools:hover{opacity:1;-webkit-transition:all 0.75s ease-in-out;-moz-transition:all 0.75s ease-in-out;-o-transition:all 0.75s ease-in-out;-ms-transition:all 0.75s ease-in-out;transition:all 0.75s ease-in-out;}
@@ -223,14 +223,16 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
.wall-item-arrowphoto-wrapper{position:absolute;left:35px;top:80px;z-index:10002;}
.wall-item-photo-menu{min-width:92px;font-size:0.75em;border:2px solid #555753;border-top:0px;background:#555753;position:absolute;left:-2px;top:101px;display:none;z-index:10003;-o-border-radius:0 5px 5px 5px;-webkit-border-radius:0 5px 5px 5px;-moz-border-radius:0 5px 5px 5px;-ms-border-radius:0 5px 5px 5px;border-radius:0 5px 5px 5px;}.wall-item-photo-menu li a{white-space:nowrap;display:block;padding:5px 6px;color:#eeeeee;}.wall-item-photo-menu li a:hover{color:#555753;background:#eeeeee;}
#item-delete-selected{overflow:auto;width:100%;}
-#connect-services-header,#connect-services,#extra-help-header,#extra-help,#postit-header,#postit{margin:5px 0 0 0;}
+#connect-services-header,#extra-help-header{margin:1.5em 0 0 0;}
+#connect-services,#extra-help{margin:0px;padding:0px;list-style:none;list-style-position:inside;margin:1em 0 0 0;}#connect-services li,#extra-help li{display:inline;}
.ccollapse-wrapper{font-size:0.9em;margin-left:5em;}
.hide-comments-outer{font-size:small;}
-.wall-item-outside-wrapper.comment{margin-left:5em;}.wall-item-outside-wrapper.comment .wall-item-photo{width:40px !important;height:40px !important;}
+.wall-item-outside-wrapper.comment{margin-left:5em;}.wall-item-outside-wrapper.comment .wall-item-info{width:5em;}
+.wall-item-outside-wrapper.comment .wall-item-photo{width:40px !important;height:40px !important;}
.wall-item-outside-wrapper.comment .wall-item-photo-wrapper{width:40px;height:40px;}
-.wall-item-outside-wrapper.comment .wall-item-photo-menu-button{width:50px;top:45px;background-position:35px center;}
+.wall-item-outside-wrapper.comment .wall-item-photo-menu-button{width:4,5em;top:4em;background-position:35px center;}
.wall-item-outside-wrapper.comment .wall-item-author{margin-left:0.2em;}
-.wall-item-outside-wrapper.comment .wall-item-photo-menu{min-width:50px;top:60px;}
+.wall-item-outside-wrapper.comment .wall-item-photo-menu{min-width:4.5em;top:5.5em;}
.comment-wwedit-wrapper{border:1px solid #eeeecc;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;margin:5px;}
.comment-edit-wrapper{border-top:1px #aaa solid;}
[class^="comment-edit-bb"]{margin:0px;padding:0px;list-style:none;list-style-position:inside;display:none;margin:-40px 0 5px 60px;width:75%;}[class^="comment-edit-bb"]>li{display:inline-block;margin:0 10px 0 0;visibility:none;}
diff --git a/view/theme/dispy/dark/style.less b/view/theme/dispy/dark/style.less
index fb0fbc6df..0617aaced 100644
--- a/view/theme/dispy/dark/style.less
+++ b/view/theme/dispy/dark/style.less
@@ -315,7 +315,7 @@ h6 {
[id$="-desc"] {
color: @main_colour;
background: @bg_colour;
- .borders(3px, ridge, @main_colour);
+ .borders(2px, outset, @dk_main_colour);
.rounded_corners;
// .box_shadow(3px, 3px, 5px);
margin: 3px 10px 7px 0;
@@ -639,7 +639,7 @@ nav #nav-notifications-linkmenu {
color: transparent;
.rounded_corners;
z-index: 100;
- .box(300px, 60px);
+ .box(270px, 60px);
}
#nav-buttons {
clear: both;
@@ -702,7 +702,7 @@ nav #nav-notifications-linkmenu {
#user-menu {
.box_shadow(5px, 0, 10px, 0);
display: block;
- width: 75%;
+ width: 80%;
margin: 3px 0 0 0;
position: relative;
.rounded_corners;
@@ -872,7 +872,7 @@ nav #nav-notifications-linkmenu {
#asidemain {
float: left;
font-size: small;
- margin: 20px 0 20px 35px;
+ margin: 1em;
width: 25%;
display: inline;
}
@@ -1229,10 +1229,10 @@ nav #nav-notifications-linkmenu {
* section
*/
#sectionmain {
- margin: 20px;
+ margin: 1em;
font-size: 0.8em;
min-width: 475px;
- width: 67%;
+ width: 69%;
float: left;
display: inline;
}
@@ -1348,7 +1348,7 @@ nav #nav-notifications-linkmenu {
}
.wall-item-info {
float: left;
- width: 8em;
+ width: 7em;
position: relative;
}
.wall-item-photo-wrapper {
@@ -1501,12 +1501,16 @@ nav #nav-notifications-linkmenu {
width: 100%;
}
#connect-services-header,
+#extra-help-header {
+ margin: 1.5em 0 0 0;
+}
#connect-services,
-#extra-help-header,
-#extra-help,
-#postit-header,
-#postit {
- margin: 5px 0 0 0;
+#extra-help {
+ .list_reset;
+ margin: 1em 0 0 0;
+ li {
+ display: inline;
+ }
}
@@ -1522,6 +1526,9 @@ nav #nav-notifications-linkmenu {
}
.wall-item-outside-wrapper.comment {
margin-left: 5em;
+ .wall-item-info {
+ width: 5em;
+ }
.wall-item-photo {
width: 40px !important;
height: 40px !important;
@@ -1530,16 +1537,16 @@ nav #nav-notifications-linkmenu {
.box(40px, 40px);
}
.wall-item-photo-menu-button {
- width: 50px;
- top: 45px;
+ width: 4,5em;
+ top: 4em;
background-position: 35px center;
}
.wall-item-author {
margin-left: 0.2em;
}
.wall-item-photo-menu {
- min-width: 50px;
- top: 60px;
+ min-width: 4.5em;
+ top: 5.5em;
}
}
.comment-wwedit-wrapper {
diff --git a/view/theme/dispy/dark/theme.php b/view/theme/dispy/dark/theme.php
index e156b6a7d..f73a12765 100644
--- a/view/theme/dispy/dark/theme.php
+++ b/view/theme/dispy/dark/theme.php
@@ -3,7 +3,6 @@
/*
* Name: Dispy Dark
* Description: Dispy Dark: Dark, Spartan, Sleek, and Functional
- * Version: 1.2.1
* Author: Simon <http://simon.kisikew.org/>
* Maintainer: Simon <http://simon.kisikew.org/>
* Screenshot: <a href="screenshot.jpg">Screenshot</a>
@@ -13,7 +12,6 @@ $a = get_app();
$a->theme_info = array(
'family' => 'dispy',
'name' => 'dark',
- 'version' => '1.2.1'
);
function dispy_dark_init(&$a) {
diff --git a/view/theme/dispy/light/_base.less b/view/theme/dispy/light/_base.less
index 3046c1bac..c605dc702 100644
--- a/view/theme/dispy/light/_base.less
+++ b/view/theme/dispy/light/_base.less
@@ -24,8 +24,9 @@
@menu_bg_colour: #555753;
//* font colour, aka color: */
-@lt_main_colour: #ffff99;
+@lt_main_colour: lighten(@bg_colour, 10%);
@main_colour: #111;
+@dk_main_colour: darken(@bg_colour, 10%);
@main_alt_colour: #999999;
// darken(@main_alt_colour, 6.5%) > #888888
// //#9eabb0
@@ -55,9 +56,6 @@
@info: #364e59;
@alert: #ff0000;
-@lt_main_colour: lighten(@bg_colour, 10%);
-@dk_main_colour: darken(@bg_colour, 10%);
-
//* links */
// yes our link colour is "friendica blue" ;)
@link_colour: @friendica_blue;
@@ -137,7 +135,19 @@
-webkit-text-overflow: @t;
text-overflow: @t;
}
-
+.lin_gradient(@x1: left, @x2: right, @y1: top, @y2: bottom, @c1: @bg_colour, @c2: @dk_bg_colour) {
+ // w3c
+ background: linear-gradient(@x1 @y2, @c1, @c2);
+ // webkit
+ // -webkit-gradient(<type>, <point> [, <radius>]?, <point> [, <radius>]? [, <stop>]*)
+ background: -webkit-gradient(linear, @x1 @y1, @x2 @y2, from(@c1), to(@c2));
+ // mozilla
+ // -moz-linear-gradient([<point> || <angle>,]? <stop>, <stop> [, <stop>])
+ background: -moz-linear-gradient(@x1 @y2, @c1, @c2);
+ // opera
+ //background: -o-linear-gradient([<point> || <angle>,]? <stop>, <stop> [, <stop>]);
+ background: -o-linear-gradient(@x1, @c1, @c2);
+}
//* pre wrap */
.wrap () {
white-space: pre-wrap;
diff --git a/view/theme/dispy/light/style.css b/view/theme/dispy/light/style.css
index c9f7ef95a..e56696eab 100644
--- a/view/theme/dispy/light/style.css
+++ b/view/theme/dispy/light/style.css
@@ -58,7 +58,7 @@ h6{font-size:xx-small;}
#articlemain{width:100%;height:100%;margin:0 auto;}
.button{color:#111111;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;padding:5px;cursor:pointer;}.button a{color:#111111;font-weight:bold;}
#profile-listing-desc a{color:#eeeeec;font-weight:bold;}
-[class$="-desc"],[id$="-desc"]{color:#eeeeec;background:#2e3436;border:3px ridge #111111;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;margin:3px 10px 7px 0;padding:5px;font-weight:bold;font-size:smaller;}
+[class$="-desc"],[id$="-desc"]{color:#eeeeec;background:#2e3436;border:2px outset #111111;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;margin:3px 10px 7px 0;padding:5px;font-weight:bold;font-size:smaller;}
#item-delete-selected-desc{float:left;margin-right:5px;}#item-delete-selected-desc:hover{text-decoration:underline;}
.intro-approve-as-friend-desc{margin-top:10px;}
.intro-desc{margin-bottom:20px;font-weight:bold;}
@@ -103,7 +103,7 @@ div.jGrowl div.info{background:#364e59 url("../../../images/icons/48/info.png")
nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkmenu.selected .icon.s22.notify{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAQAAABuvaSwAAAAAmJLR0QA/4ePzL8AAAAJcEhZcwAAUJcAAFCXAZtv64UAAAHuSURBVCjPbZPbTlNBFIYHLixXRIhEQGNRMUopJAJyAyZ4Z2l8B+XwEBqKtjwOp8oDIAJKIJFUjdFIQCUYrRytdyb0459ht8wG9rrYs9b618y/TsYEH4ZK4qRYYIdDybZOI7TKakIfVhrJ8J2i5IBNyV93/kaaBuv3oV3MgwCTPKGHPkkPA0xRUMBrOgN4AP0o6BseEpF2m3es0qJTFQneyvMhgDsC9tZprnEcGuOPeMcDLUpW3jlLxlDBmJTFY6gLvsVv8tyh9G7U3Z6mwtCuJAoiECSh/w1+8otmTjLqF2KDNsNzRY1bruV0o6rFFtc9S5USh5RRWvAYv4xX9dYPS8ur1oBQC4Y99m2uHriRNda5ErLdU1l3jCI2xdJ3XOYLX6kP2W6K2OF54Et84jN154F31d6ukKOG92pSbcjWLRrbRhVGLTZeOtXqX46LoQSHhJo3jOo3ESrdBQbljIRKNyXUiKHNNSXhTdbZiUzyT/WJ23Zn3BBFy+2u4ZHc1eV2N7EkxAvbbqMRmZOSlbE0g/uajRgl6Iy8r1wpnaFTQ4ji+8XOEsuxYmdDWpJleXJ0+BPdoduL4p5Vavd5IOllmJfiWmSWu6d3pV4jteFWqaAGbLkdKSqtUXXUnN3DSvF8phfy/JfkxfOp9sVb2COz+hY/T0qkwwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxMS0wOS0xNlQwOTozOTowMCswMjowMC9Oi90AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTEtMDktMTZUMDk6Mzk6MDArMDI6MDBeEzNhAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAABJRU5ErkJggg==");}
.show{display:block;}
#notifications{width:170px;height:20px;font-size:small;top:-19px;left:4px;position:absolute;}
-#nav-floater{position:fixed;top:20px;right:1%;padding:5px;background:#2e3436;color:transparent;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;z-index:100;width:300px;height:60px;}
+#nav-floater{position:fixed;top:20px;right:1%;padding:5px;background:#2e3436;color:transparent;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;z-index:100;width:270px;height:60px;}
#nav-buttons{clear:both;list-style:none;padding:0px;margin:0px;height:25px;}#nav-buttons>li{padding:0;display:inline-block;margin:0px -4px 0px 0px;}
.floaterflip{display:block;position:fixed;z-index:110;top:56px;right:19px;width:22px;height:22px;overflow:hidden;margin:0px;background:transparent url(light/icons.png) -190px -60px no-repeat;}
.search-box{display:inline-block;margin:5px;position:fixed;right:0px;bottom:0px;z-index:100;background:#2e3436;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;}
@@ -111,7 +111,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
#search-text{border:1px solid #999999;margin:5px 0;}
#mini-search-text{font-size:8pt;height:14px;width:10em;margin:5px;}
#scrollup{position:fixed;right:5px;bottom:40px;z-index:100;}#scrollup a:hover{text-decoration:none;border:0;}
-#user-menu{-moz-box-shadow:5px 0 10px 0 #111111;-o-box-shadow:5px 0 10px 0 #111111;-webkit-box-shadow:5px 0 10px 0 #111111;-ms-box-shadow:5px 0 10px 0 #111111;box-shadow:5px 0 10px 0 #111111;display:block;width:75%;margin:3px 0 0 0;position:relative;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;background-color:#555753;background-image:url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gATQ3JlYXRlZCB3aXRoIEdJTVD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAIAAwDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAMH/8QAIhAAAQMEAgIDAAAAAAAAAAAAAQIDBAAFBhESIQdBMVFh/8QAFQEBAQAAAAAAAAAAAAAAAAAAAgP/xAAXEQEBAQEAAAAAAAAAAAAAAAABAAIR/9oADAMBAAIRAxEAPwCXiHO8dbsEi35BEhIehNlbUhxhBU82O+G9bKgToD2D+VlmZX9OWZBJuAiMxGlni0w0gJCED4HXv7pSi6eFML//2Q==");background-position:98% center;background-repeat:no-repeat;clear:both;top:4px;left:10px;padding:2px;}#user-menu>a{vertical-align:top;outline:0 none;}
+#user-menu{-moz-box-shadow:5px 0 10px 0 #111111;-o-box-shadow:5px 0 10px 0 #111111;-webkit-box-shadow:5px 0 10px 0 #111111;-ms-box-shadow:5px 0 10px 0 #111111;box-shadow:5px 0 10px 0 #111111;display:block;width:80%;margin:3px 0 0 0;position:relative;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;background-color:#555753;background-image:url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gATQ3JlYXRlZCB3aXRoIEdJTVD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAIAAwDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAMH/8QAIhAAAQMEAgIDAAAAAAAAAAAAAQIDBAAFBhESIQdBMVFh/8QAFQEBAQAAAAAAAAAAAAAAAAAAAgP/xAAXEQEBAQEAAAAAAAAAAAAAAAABAAIR/9oADAMBAAIRAxEAPwCXiHO8dbsEi35BEhIehNlbUhxhBU82O+G9bKgToD2D+VlmZX9OWZBJuAiMxGlni0w0gJCED4HXv7pSi6eFML//2Q==");background-position:98% center;background-repeat:no-repeat;clear:both;top:4px;left:10px;padding:2px;}#user-menu>a{vertical-align:top;outline:0 none;}
#user-menu-label{font-size:small;padding:3px 20px 9px 5px;height:10px;}
.nav-ajax-update,.nav-ajax-left{width:30px;height:19px;background:transparent url(light/notifications.png) 0 0 no-repeat;color:#111111;font-weight:bold;font-size:0.8em;padding-top:0.2em;text-align:center;float:left;margin:0 -1px 0 3px;display:block;visibility:hidden;}
.nav-ajax-update.show,.nav-ajax-left.show{visibility:visible;}
@@ -133,7 +133,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
#sysmsg_info{position:fixed;bottom:0;-moz-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-o-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-webkit-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-ms-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;padding:10px;background-color:#fcaf3e;border:2px solid #f8911b;border-bottom:0;padding-bottom:50px;z-index:1000;}
#sysmsg{position:fixed;bottom:0;-moz-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-o-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-webkit-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;-ms-box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;box-shadow:3px 3px 3px 10px 0 #111111 5px 5px 0px #111111;padding:10px;background-color:#fcaf3e;border:2px solid #f8911b;border-bottom:0;padding-bottom:50px;z-index:1000;}
#sysmsg_info br,#sysmsg br{display:block;margin:2px 0px;border-top:1px solid #eeeeec;}
-#asidemain{float:left;font-size:small;margin:20px 0 20px 35px;width:25%;display:inline;}
+#asidemain{float:left;font-size:small;margin:1em;width:25%;display:inline;}
#asideright,#asideleft{display:none;}
.vcard .fn{font-size:1.5em;font-weight:bold;border-bottom:1px solid #284d7d;padding-bottom:3px;}
.vcard #profile-photo-wrapper{margin:20px 0;background-color:#555753;padding:5px;width:175px;height:175px;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;-moz-box-shadow:3px 3px 10px 0 #111111;-o-box-shadow:3px 3px 10px 0 #111111;-webkit-box-shadow:3px 3px 10px 0 #111111;-ms-box-shadow:3px 3px 10px 0 #111111;box-shadow:3px 3px 10px 0 #111111;}
@@ -187,7 +187,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
#jot-title-display{font-weight:bold;}
.jothidden{display:none;}
#jot-preview-content{background-color:#f2f2c3;color:#111111;border:1px solid #111111;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;-moz-box-shadow:5px 0 10px 0px #111111;-o-box-shadow:5px 0 10px 0px #111111;-webkit-box-shadow:5px 0 10px 0px #111111;-ms-box-shadow:5px 0 10px 0px #111111;box-shadow:5px 0 10px 0px #111111;padding:3px 3px 6px 10px;}#jot-preview-content .wall-item-outside-wrapper{border:0;-o-border-radius:0px 0px 0px 0px;-webkit-border-radius:0px 0px 0px 0px;-moz-border-radius:0px 0px 0px 0px;-ms-border-radius:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;-moz-box-shadow:0 0 0 0 #111111;-o-box-shadow:0 0 0 0 #111111;-webkit-box-shadow:0 0 0 0 #111111;-ms-box-shadow:0 0 0 0 #111111;box-shadow:0 0 0 0 #111111;}
-#sectionmain{margin:20px;font-size:0.8em;min-width:475px;width:67%;float:left;display:inline;}
+#sectionmain{margin:1em;font-size:0.8em;min-width:475px;width:69%;float:left;display:inline;}
.tabs{margin:0px;padding:0px;list-style:none;list-style-position:inside;margin:10px 0;}.tabs li{display:inline;font-size:smaller;}
.tab{border:1px solid #284d7d;padding:4px;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;}.tab:active,.tab:hover{background:#f2f2c3;color:#111111;border:1px solid #284d7d;}
.tab a{border:0;text-decoration:none;}
@@ -203,7 +203,7 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
[id^="tread-wrapper"],[class^="tread-wrapper"]{margin:1.2em 0 0 0;padding:0px;}
.wall-item-photo-menu{display:none;}
.wall-item-photo-menu-button{display:none;text-indent:-99999px;background:#555753 url(light/menu-user-pin.jpg) no-repeat 75px center;position:absolute;overflow:hidden;width:90px;height:20px;top:85px;left:0;-o-border-radius:0 0 5px 5px;-webkit-border-radius:0 0 5px 5px;-moz-border-radius:0 0 5px 5px;-ms-border-radius:0 0 5px 5px;border-radius:0 0 5px 5px;}
-.wall-item-info{float:left;width:8em;position:relative;}
+.wall-item-info{float:left;width:7em;position:relative;}
.wall-item-photo-wrapper{width:80px;height:80px;position:relative;padding:5px;background-color:#555753;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;}
[class^="wall-item-tools"] *{}[class^="wall-item-tools"] *>*{}
.wall-item-tools{float:right;opacity:0.4;-webkit-transition:all 0.75s ease-in-out;-moz-transition:all 0.75s ease-in-out;-o-transition:all 0.75s ease-in-out;-ms-transition:all 0.75s ease-in-out;transition:all 0.75s ease-in-out;}.wall-item-tools:hover{opacity:1;-webkit-transition:all 0.75s ease-in-out;-moz-transition:all 0.75s ease-in-out;-o-transition:all 0.75s ease-in-out;-ms-transition:all 0.75s ease-in-out;transition:all 0.75s ease-in-out;}
@@ -223,14 +223,16 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify,nav #nav-notifications-linkm
.wall-item-arrowphoto-wrapper{position:absolute;left:35px;top:80px;z-index:10002;}
.wall-item-photo-menu{min-width:92px;font-size:0.75em;border:2px solid #555753;border-top:0px;background:#555753;position:absolute;left:-2px;top:101px;display:none;z-index:10003;-o-border-radius:0 5px 5px 5px;-webkit-border-radius:0 5px 5px 5px;-moz-border-radius:0 5px 5px 5px;-ms-border-radius:0 5px 5px 5px;border-radius:0 5px 5px 5px;}.wall-item-photo-menu li a{white-space:nowrap;display:block;padding:5px 6px;color:#eeeeec;}.wall-item-photo-menu li a:hover{color:#555753;background:#eeeeec;}
#item-delete-selected{overflow:auto;width:100%;}
-#connect-services-header,#connect-services,#extra-help-header,#extra-help,#postit-header,#postit{margin:5px 0 0 0;}
+#connect-services-header,#extra-help-header{margin:1.5em 0 0 0;}
+#connect-services,#extra-help{margin:0px;padding:0px;list-style:none;list-style-position:inside;margin:1em 0 0 0;}#connect-services li,#extra-help li{display:inline;}
.ccollapse-wrapper{font-size:0.9em;margin-left:5em;}
.hide-comments-outer{font-size:small;}
-.wall-item-outside-wrapper.comment{margin-left:5em;}.wall-item-outside-wrapper.comment .wall-item-photo{width:40px !important;height:40px !important;}
+.wall-item-outside-wrapper.comment{margin-left:5em;}.wall-item-outside-wrapper.comment .wall-item-info{width:5em;}
+.wall-item-outside-wrapper.comment .wall-item-photo{width:40px !important;height:40px !important;}
.wall-item-outside-wrapper.comment .wall-item-photo-wrapper{width:40px;height:40px;}
-.wall-item-outside-wrapper.comment .wall-item-photo-menu-button{width:50px;top:45px;background-position:35px center;}
+.wall-item-outside-wrapper.comment .wall-item-photo-menu-button{width:4,5em;top:4em;background-position:35px center;}
.wall-item-outside-wrapper.comment .wall-item-author{margin-left:0.2em;}
-.wall-item-outside-wrapper.comment .wall-item-photo-menu{min-width:50px;top:60px;}
+.wall-item-outside-wrapper.comment .wall-item-photo-menu{min-width:4.5em;top:5.5em;}
.comment-wwedit-wrapper{border:1px solid #111111;-o-border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-ms-border-radius:5px;border-radius:5px;margin:5px;}
.comment-edit-wrapper{border-top:1px #aaa solid;}
[class^="comment-edit-bb"]{margin:0px;padding:0px;list-style:none;list-style-position:inside;display:none;margin:-40px 0 5px 60px;width:75%;}[class^="comment-edit-bb"]>li{display:inline-block;margin:0 10px 0 0;visibility:none;}
diff --git a/view/theme/dispy/light/style.less b/view/theme/dispy/light/style.less
index 045dadba5..72b3069a6 100644
--- a/view/theme/dispy/light/style.less
+++ b/view/theme/dispy/light/style.less
@@ -316,7 +316,7 @@ h6 {
[id$="-desc"] {
color: @bg_colour;
background: @dk_bg_colour;
- .borders(3px, ridge, @main_colour);
+ .borders(2px, outset, @main_colour);
.rounded_corners;
// .box_shadow(3px, 3px, 5px);
margin: 3px 10px 7px 0;
@@ -640,7 +640,7 @@ nav #nav-notifications-linkmenu {
color: transparent;
.rounded_corners;
z-index: 100;
- .box(300px, 60px);
+ .box(270px, 60px);
}
#nav-buttons {
clear: both;
@@ -703,7 +703,7 @@ nav #nav-notifications-linkmenu {
#user-menu {
.box_shadow(5px, 0, 10px, 0);
display: block;
- width: 75%;
+ width: 80%;
margin: 3px 0 0 0;
position: relative;
.rounded_corners;
@@ -873,7 +873,7 @@ nav #nav-notifications-linkmenu {
#asidemain {
float: left;
font-size: small;
- margin: 20px 0 20px 35px;
+ margin: 1em;
width: 25%;
display: inline;
}
@@ -1230,10 +1230,10 @@ nav #nav-notifications-linkmenu {
* section
*/
#sectionmain {
- margin: 20px;
+ margin: 1em;
font-size: 0.8em;
min-width: 475px;
- width: 67%;
+ width: 69%;
float: left;
display: inline;
}
@@ -1349,7 +1349,7 @@ nav #nav-notifications-linkmenu {
}
.wall-item-info {
float: left;
- width: 8em;
+ width: 7em;
position: relative;
}
.wall-item-photo-wrapper {
@@ -1502,12 +1502,16 @@ nav #nav-notifications-linkmenu {
width: 100%;
}
#connect-services-header,
+#extra-help-header {
+ margin: 1.5em 0 0 0;
+}
#connect-services,
-#extra-help-header,
-#extra-help,
-#postit-header,
-#postit {
- margin: 5px 0 0 0;
+#extra-help {
+ .list_reset;
+ margin: 1em 0 0 0;
+ li {
+ display: inline;
+ }
}
@@ -1523,6 +1527,9 @@ nav #nav-notifications-linkmenu {
}
.wall-item-outside-wrapper.comment {
margin-left: 5em;
+ .wall-item-info {
+ width: 5em;
+ }
.wall-item-photo {
width: 40px !important;
height: 40px !important;
@@ -1531,16 +1538,16 @@ nav #nav-notifications-linkmenu {
.box(40px, 40px);
}
.wall-item-photo-menu-button {
- width: 50px;
- top: 45px;
+ width: 4,5em;
+ top: 4em;
background-position: 35px center;
}
.wall-item-author {
margin-left: 0.2em;
}
.wall-item-photo-menu {
- min-width: 50px;
- top: 60px;
+ min-width: 4.5em;
+ top: 5.5em;
}
}
.comment-wwedit-wrapper {
diff --git a/view/theme/dispy/light/theme.php b/view/theme/dispy/light/theme.php
index df3cca042..94a699b70 100644
--- a/view/theme/dispy/light/theme.php
+++ b/view/theme/dispy/light/theme.php
@@ -3,7 +3,6 @@
/*
* Name: Dispy Light
* Description: Dispy Light: Light, Spartan, Sleek, and Functional
- * Version: 1.2.1
* Author: Simon <http://simon.kisikew.org/>
* Maintainer: Simon <http://simon.kisikew.org/>
* Screenshot: <a href="screenshot.jpg">Screenshot</a>
@@ -13,7 +12,6 @@ $a = get_app();
$a->theme_info = array(
'family' => 'dispy',
'name' => 'light',
- 'version' => '1.2.1'
);
function dispy_light_init(&$a) {
diff --git a/view/theme/dispy/style.php b/view/theme/dispy/style.php
index f666e2768..375651425 100644
--- a/view/theme/dispy/style.php
+++ b/view/theme/dispy/style.php
@@ -13,238 +13,94 @@
$colour = get_pconfig(local_user(), "dispy", "colour");
}
- if ($line_height === false) { $line_height = $site_line_height; }
- if ($line_height === false) { $line_height = "1.2"; }
- if ($dispy_font_size === false) { $dispy_font_size = $site_dispy_font_size; }
- if ($dispy_font_size === false) { $dispy_font_size = "12"; }
- if ($colour === false) { $colour = $site_colour; }
- if ($colour === false) { $colour = "light"; }
+ if ($line_height === false) {
+ $line_height = $site_line_height;
+ }
+ if ($line_height === false) {
+ $line_height = "1.2";
+ }
+ if ($dispy_font_size === false) {
+ $dispy_font_size = $site_dispy_font_size;
+ }
+ if ($dispy_font_size === false) {
+ $dispy_font_size = "12";
+ }
+ if ($colour === false) {
+ $colour = $site_colour;
+ }
+ if ($colour === false) {
+ $colour = "light";
+ }
if($colour == "light") {
if (file_exists("$THEMEPATH/light/style.css")) {
echo file_get_contents("$THEMEPATH/light/style.css");
}
- if($dispy_font_size == "16") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 16px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 16px;
- }";
- }
- if($dispy_font_size == "15") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 15px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 15px;
- }";
- }
- if($dispy_font_size == "14") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 14px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 14px;
- }";
- }
- if($dispy_font_size == "13.5") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 13.5px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 13.5px;
- }";
- }
- if($dispy_font_size == "13") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 13px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 13px;
- }";
- }
- if($dispy_font_size == "12.5") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 12.5px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 12.5px;
- }";
- }
- if($dispy_font_size == "12") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 12px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 12px;
- }";
- }
- if($line_height == "1.5") {
- echo "
- .wall-item-container .wall-item-content {
- line-height: 1.5;
- }
- .wall-item-photo-container .wall-item-content {
- line-height: 1.5;
- }";
- }
- if($line_height == "1.4") {
- echo "
- .wall-item-container .wall-item-content {
- line-height: 1.4;
- }
- .wall-item-photo-container .wall-item-content {
- line-height: 1.4;
- }";
- }
- if($line_height == "1.3") {
- echo "
- .wall-item-container .wall-item-content {
- line-height: 1.3;
- }
- .wall-item-photo-container .wall-item-content {
- line-height: 1.3;
- }";
- }
- if($line_height == "1.2") {
- echo "
- .wall-item-container .wall-item-content {
- line-height: 1.2;
- }
- .wall-item-photo-container .wall-item-content {
- line-height: 1.2;
- }";
- }
- if($line_height == "1.1") {
- echo "
- .wall-item-container .wall-item-content {
- line-height: 1.1;
- }
- .wall-item-photo-container .wall-item-content {
- line-height: 1.1;
- }";
- }
}
if($colour == "dark") {
if (file_exists("$THEMEPATH/dark/style.css")) {
echo file_get_contents("$THEMEPATH/dark/style.css");
}
- if($dispy_font_size == "16") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 16px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 16px;
- }";
- }
- if($dispy_font_size == "15") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 15px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 15px;
- }";
- }
- if($dispy_font_size == "14") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 14px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 14px;
- }";
- }
- if($dispy_font_size == "13.5") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 13.5px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 13.5px;
- }";
- }
- if($dispy_font_size == "13") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 13px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 13px;
- }";
- }
- if($dispy_font_size == "12.5") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 12.5px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 12.5px;
- }";
- }
- if($dispy_font_size == "12") {
- echo "
- .wall-item-container .wall-item-content {
- font-size: 12px;
- }
- .wall-item-photo-container .wall-item-content {
- font-size: 12px;
- }";
- }
- if($line_height == "1.5") {
- echo "
- .wall-item-container .wall-item-content {
- line-height: 1.5;
- }
- .wall-item-photo-container .wall-item-content {
- line-height: 1.5;
- }";
- }
- if($line_height == "1.4"){
- echo "
- .wall-item-container .wall-item-content {
- line-height: 1.4;
- }
- .wall-item-photo-container .wall-item-content {
- line-height: 1.4;
- }";
- }
- if($line_height == "1.3") {
- echo "
- .wall-item-container .wall-item-content {
- line-height: 1.3;
- }
- .wall-item-photo-container .wall-item-content {
- line-height: 1.3;
- }";
- }
- if($line_height == "1.2") {
- echo "
- .wall-item-container .wall-item-content {
- line-height: 1.2;
- }
- .wall-item-photo-container .wall-item-content {
- line-height: 1.2;
- }";
- }
- if($line_height == "1.1") {
- echo "
- .wall-item-container .wall-item-content {
- line-height: 1.1;
- }
- .wall-item-photo-container .wall-item-content {
- line-height: 1.1;
- }";
- }
- }
+ }
+ if($dispy_font_size == "16") {
+ echo ".wall-item-content {
+ font-size: 16px;
+ }";
+ }
+ if($dispy_font_size == "15") {
+ echo ".wall-item-content {
+ font-size: 15px;
+ }";
+ }
+ if($dispy_font_size == "14") {
+ echo ".wall-item-content {
+ font-size: 14px;
+ }";
+ }
+ if($dispy_font_size == "13.5") {
+ echo ".wall-item-content {
+ font-size: 13.5px;
+ }";
+ }
+ if($dispy_font_size == "13") {
+ echo ".wall-item-content {
+ font-size: 13px;
+ }";
+ }
+ if($dispy_font_size == "12.5") {
+ echo ".wall-item-content {
+ font-size: 12.5px;
+ }";
+ }
+ if($dispy_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/dispy/theme.php b/view/theme/dispy/theme.php
index deedc86f7..2d423a928 100644
--- a/view/theme/dispy/theme.php
+++ b/view/theme/dispy/theme.php
@@ -20,7 +20,7 @@
$a = get_app();
$a->theme_info = array(
'family' => 'dispy',
- 'version' => '1.2'
+ 'version' => '1.2.2'
);
function dispy_init(&$a) {
diff --git a/view/theme/duepuntozero/style.css b/view/theme/duepuntozero/style.css
index 0abf128a3..2f792977b 100644
--- a/view/theme/duepuntozero/style.css
+++ b/view/theme/duepuntozero/style.css
@@ -80,6 +80,7 @@ blockquote {
.heart {
color: #FF0000;
font-size: 100%;
+ margin-right: 5px;
}
@@ -338,6 +339,15 @@ div.wall-item-content-wrapper.shiny {
font-weight: bold;
}
+.settings-widget .selected {
+ padding: 3px;
+ -moz-border-radius: 3px;
+ border-radius: 3px;
+ border: 1px solid #CCCCCC;
+ background: #F8F8F8;
+ font-weight: bold;
+}
+
.fakelink:hover {
color: #3465a4;
text-decoration: underline;
@@ -809,8 +819,15 @@ input#dfrn-url {
clear: both;
}
+.settings-widget ul {
+ list-style-type: none;
+ padding: 0px;
+}
-
+.settings-widget li {
+ margin-left: 24px;
+ margin-bottom: 8px;
+}
#gender-select, #marital-select, #sexual-select {
diff --git a/view/theme/slackr/style.css b/view/theme/slackr/style.css
index 82ba795cd..39da7bb6c 100644
--- a/view/theme/slackr/style.css
+++ b/view/theme/slackr/style.css
@@ -43,7 +43,7 @@ nav #site-location {
#profile-jot-text_parent, .mceLayout {
border-radius: 3px;
-moz-border-radius: 3px;
- box-shadow: 3px 3px 10px 0 #000000;
+ box-shadow: 4px 4px 3px 0 #444444;
}
#profile-jot-text:hover {
@@ -66,24 +66,34 @@ nav #site-location {
.wall-item-photo, .photo, .contact-block-img, .my-comment-photo {
border-radius: 3px;
-moz-border-radius: 3px;
- box-shadow: 3px 3px 10px 0 #000000;
+ box-shadow: 4px 4px 3px 0 #444444;
}
#sidebar-page-list img {
border-radius: 3px;
-moz-border-radius: 3px;
- box-shadow: 3px 3px 10px -2px #000000;
+ box-shadow: 4px 4px 3px 0 #444444;
}
.contact-entry-photo img, .profile-match-photo img, #photo-photo img, .directory-photo-img, .photo-album-photo, .photo-top-photo, .fc, .profile-jot-text, .group-selected, .nets-selected, .fileas-selected, #profile-jot-submit, .categories-selected {
border-radius: 3px;
-moz-border-radius: 3px;
- box-shadow: 3px 3px 10px 0 #000000;
+ box-shadow: 4px 4px 3px 0 #444444;
+}
+.settings-widget .selected {
+ border-radius: 3px;
+ -moz-border-radius: 3px;
+ box-shadow: 4px 4px 3px 0 #444444;
+}
+
+.photo {
+ border: 1px solid #AAAAAA;
}
.photo-top-photo, .photo-album-photo {
padding: 10px;
max-width: 300px;
+ border: 1px solid #888888;
}
.rotleft1 {