aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xLICENSE2
-rw-r--r--README4
-rwxr-xr-xboot.php4
-rwxr-xr-xdatabase.sql43
-rw-r--r--doc/Groups-and-Privacy.md17
-rwxr-xr-xhtconfig.php7
-rwxr-xr-xinclude/Scrape.php32
-rwxr-xr-xinclude/bb2diaspora.php32
-rw-r--r--[-rwxr-xr-x]include/bbcode.php7
-rwxr-xr-xinclude/config.php2
-rwxr-xr-xinclude/conversation.php20
-rwxr-xr-xinclude/delivery.php44
-rwxr-xr-xinclude/diaspora.php15
-rwxr-xr-xinclude/email.php200
-rwxr-xr-xinclude/enotify.php195
-rwxr-xr-xinclude/event.php2
-rwxr-xr-xinclude/html2bbcode.php6
-rw-r--r--include/html2plain.php180
-rwxr-xr-xinclude/items.php58
-rwxr-xr-xinclude/network.php59
-rwxr-xr-xinclude/notifier.php34
-rwxr-xr-xinclude/plugin.php77
-rwxr-xr-xinclude/poller.php72
-rw-r--r--include/quoteconvert.php132
-rwxr-xr-xinclude/template_processor.php23
-rwxr-xr-xinclude/text.php2
-rwxr-xr-xjs/main.js8
-rw-r--r--library/spam/b8/storage/storage_frndc.php60
-rwxr-xr-xlibrary/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js73
-rwxr-xr-xmod/acl.php4
-rwxr-xr-xmod/admin.php181
-rwxr-xr-xmod/contacts.php3
-rw-r--r--mod/dfrn_confirm.php12
-rwxr-xr-xmod/display.php8
-rwxr-xr-xmod/follow.php5
-rwxr-xr-xmod/item.php5
-rwxr-xr-xmod/network.php2
-rwxr-xr-xmod/notifications.php8
-rw-r--r--mod/notify.php32
-rwxr-xr-xmod/photo.php2
-rw-r--r--mod/ping.php274
-rwxr-xr-xmod/profile.php8
-rwxr-xr-xmod/settings.php77
-rwxr-xr-xmod/tagger.php1
-rwxr-xr-xmod/viewcontacts.php3
-rwxr-xr-xupdate.php49
-rwxr-xr-xutil/messages.po1430
-rwxr-xr-xutil/strings.php665
-rwxr-xr-xview/admin_aside.tpl1
-rwxr-xr-xview/admin_plugins.tpl6
-rwxr-xr-xview/admin_plugins_details.tpl4
-rwxr-xr-xview/contact_template.tpl4
-rw-r--r--view/de/messages.po1469
-rwxr-xr-xview/de/strings.php88
-rwxr-xr-xview/email_notify_html.tpl2
-rwxr-xr-xview/email_notify_text.tpl2
-rwxr-xr-xview/head.tpl4
-rwxr-xr-xview/jot-header.tpl3
-rwxr-xr-xview/notifications.tpl2
-rwxr-xr-xview/settings_connectors.tpl2
-rw-r--r--view/theme/clean/unsupported0
-rw-r--r--view/theme/darkness/unsupported0
-rwxr-xr-xview/theme/darkzero-NS/border.jpgbin0 -> 521 bytes
-rwxr-xr-xview/theme/darkzero-NS/head.jpgbin0 -> 1269 bytes
-rwxr-xr-xview/theme/darkzero-NS/sectionend.jpgbin0 -> 355 bytes
-rwxr-xr-xview/theme/darkzero-NS/shiny.pngbin0 -> 362 bytes
-rwxr-xr-xview/theme/darkzero-NS/style.css99
-rwxr-xr-xview/theme/darkzero-NS/theme.php57
-rw-r--r--view/theme/darkzero-NS/unsupported0
-rwxr-xr-xview/theme/darkzero/style.css4
-rwxr-xr-xview/theme/darkzero/theme.php7
-rwxr-xr-xview/theme/dispy/premium.pngbin0 -> 2317 bytes
-rwxr-xr-xview/theme/dispy/star.pngbin0 -> 2129 bytes
-rwxr-xr-xview/theme/dispy/style.css15
-rw-r--r--view/theme/dispy/tag.pngbin0 -> 632 bytes
-rwxr-xr-xview/theme/dispy/wall_item.tpl1
-rwxr-xr-xview/theme/dispy/wallwall_item.tpl1
-rwxr-xr-xview/theme/duepuntozero/nav.tpl17
-rwxr-xr-xview/theme/duepuntozero/style.css70
-rwxr-xr-xview/theme/duepuntozero/wallwall_item.tpl1
-rw-r--r--view/theme/easterbunny/unsupported0
-rw-r--r--view/theme/ghost/unsupported0
-rw-r--r--view/theme/goldenrod/unsupported0
-rw-r--r--view/theme/loozah/unsupported0
-rwxr-xr-xview/theme/loozah/wall_item.tpl2
-rwxr-xr-xview/theme/loozah/wallwall_item.tpl1
-rw-r--r--view/theme/shady/unsupported0
-rw-r--r--view/theme/vier/colors.less4
-rw-r--r--view/theme/vier/icons.less5
-rw-r--r--view/theme/vier/quattro.less250
-rwxr-xr-xview/theme/vier/search_item.tpl5
-rw-r--r--view/theme/vier/style.css698
-rw-r--r--view/theme/vier/wall_item.tpl7
-rw-r--r--view/theme/vier/wallwall_item.tpl6
-rwxr-xr-xview/wallwall_item.tpl2
95 files changed, 4726 insertions, 2292 deletions
diff --git a/LICENSE b/LICENSE
index 65ec68b9c..15c3e825b 100755
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2010, 2011 the Friendica Project
+Copyright (c) 2010-2012 the Friendica Project
All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
diff --git a/README b/README
index e69de29bb..152d481ea 100644
--- a/README
+++ b/README
@@ -0,0 +1,4 @@
+Friendica Social Communications Server
+======================================
+
+Welcome to the free social web.
diff --git a/boot.php b/boot.php
index 8b78c0ee5..e1dc7e537 100755
--- 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', '2.3.1260' );
+define ( 'FRIENDICA_VERSION', '2.3.1266' );
define ( 'DFRN_PROTOCOL_VERSION', '2.22' );
-define ( 'DB_UPDATE_VERSION', 1123 );
+define ( 'DB_UPDATE_VERSION', 1129 );
define ( 'EOL', "<br />\r\n" );
define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' );
diff --git a/database.sql b/database.sql
index e051cdaac..8c74ecddf 100755
--- a/database.sql
+++ b/database.sql
@@ -257,6 +257,7 @@ CREATE TABLE IF NOT EXISTS `item` (
KEY `last-child` (`last-child`),
KEY `unseen` (`unseen`),
KEY `wall` (`wall`),
+ KEY `author-name` (`author-name`),
KEY `author-link` (`author-link`),
FULLTEXT KEY `title` (`title`),
FULLTEXT KEY `body` (`body`),
@@ -633,7 +634,8 @@ CREATE TABLE IF NOT EXISTS `mailacct` (
`mailbox` CHAR( 255 ) NOT NULL,
`user` CHAR( 255 ) NOT NULL ,
`pass` TEXT NOT NULL ,
-`reply_to` CHAR( 255 ) NOT NULL ,
+`action` INT NOT NULL ,
+`movetofolder` CHAR(255) NOT NULL ,
`pubmail` TINYINT(1) NOT NULL DEFAULT '0',
`last_check` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00'
) ENGINE = MyISAM DEFAULT CHARSET=utf8;
@@ -809,5 +811,44 @@ INDEX ( `uid` )
) ENGINE = MyISAM DEFAULT CHARSET=utf8;
+--
+-- Table structure for table `notify-threads`
+--
+-- notify-id: notify.id of the first notification of this thread
+-- master-parent-item: item.id of the parent item
+-- parent-item: item.id of the imediate parent (only for multi-thread)
+-- not used yet.
+-- receiver-uid: user.uid of the receiver of this notification.
+--
+-- If we query for a master-parent-item and receiver-uid...
+-- * Returns 1 item: this is not the parent notification,
+-- so just "follow" the thread (references to this notification)
+-- * Returns no item: this is the first notification related to
+-- this parent item. So, create the record and use the message-id
+-- header.
+
+
+CREATE TABLE IF NOT EXISTS `notify-threads` (
+`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
+`notify-id` INT NOT NULL,
+`master-parent-item` INT( 10 ) unsigned NOT NULL DEFAULT '0',
+`parent-item` INT( 10 ) unsigned NOT NULL DEFAULT '0',
+`receiver-uid` INT NOT NULL,
+INDEX ( `master-parent-item` ),
+INDEX ( `receiver-uid` )
+) ENGINE = MyISAM DEFAULT CHARSET=utf8;
+
+CREATE TABLE IF NOT EXISTS `spam` (
+`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
+`uid` INT NOT NULL,
+`spam` INT NOT NULL DEFAULT '0',
+`ham` INT NOT NULL DEFAULT '0',
+`term` CHAR(255) NOT NULL,
+`date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
+INDEX ( `uid` ),
+INDEX ( `spam` ),
+INDEX ( `ham` ),
+INDEX ( `term` )
+) ENGINE = MyISAM DEFAULT CHARSET=utf8;
diff --git a/doc/Groups-and-Privacy.md b/doc/Groups-and-Privacy.md
index 7e93fb9d0..09c6a7349 100644
--- a/doc/Groups-and-Privacy.md
+++ b/doc/Groups-and-Privacy.md
@@ -34,3 +34,20 @@ Once you have created a post, you can not change the permissions assigned. Withi
In case you haven't yet figured this out, we are encouraging you to encourage your friends to use Friendica - because all these privacy features work much better within a privacy-aware network. Many of the other social networks Friendica can connect to have no privacy controls.
+
+Profiles, Privacy, and Photos
+=============================
+
+The decentralised nature of Friendica (many websites exchanging information rather than one website which controls everything) has some implications with privacy as it relates to people on other sites. There are things you should be aware of, so you can decide best how to interact privately.
+
+Sharing photos privately is a problem. We can only share them __privately__ with Friendica members. In order to share with other people, we need to prove who they are. We can prove the identity of Friendica members, as we have a mechanism to do so. Your friends on other networks will be blocked from viewing these private photos because we cannot prove that they should be allowed to see them.
+
+Our developers are working on solutions to allow access to your friends - no matter what network they are on. However we take privacy seriously and don't behave like some networks that __pretend__ your photos are private, but make them available to others without proof of identity.
+
+Your profile and "wall" may also be visited by your friends from other networks, and you can block access to these by web visitors that Friendica doesn't know. Be aware that this could include some of your friends on other networks.
+
+This may produce undesired results when posting a long status message to (for instance) Twitter and even Facebook. When Friendica sends a post to these networks which exceeds the service length limit, we truncate it and provide a link to the original. The original is a link back to your Friendica profile. As Friendica cannot prove who they are, it may not be possible for these people to view your post in full.
+
+For people in this situation we would recommend providing a "Twitter-length" summary, with more detail for friends that can see the post in full.
+
+Blocking your profile or entire Friendica site from unknown web visitors also has serious implications for communicating with StatusNet/identi.ca members. These networks communicate with others via public protocols that are not authenticated. In order to view your posts, these networks have to access them as an "unknown web visitor". If we allowed this, it would mean anybody could in fact see your posts, and you've instructed Friendica not to allow this. So be aware that the act of blocking your profile to unknown visitors also has the effect of blocking outbound communication with public networks (such as identi.ca) and feed readers such as Google Reader. \ No newline at end of file
diff --git a/htconfig.php b/htconfig.php
index cb6e7b784..01f56f2c4 100755
--- a/htconfig.php
+++ b/htconfig.php
@@ -32,6 +32,9 @@ $a->config['sitename'] = "Friendica Social Network";
// to the email address of an already registered person who can authorise
// and/or approve/deny the request.
+// In order to perform system administration via the admin panel, admin_email
+// must precisely match the email address of the person logged in.
+
$a->config['register_policy'] = REGISTER_OPEN;
$a->config['register_text'] = '';
$a->config['admin_email'] = '';
@@ -64,6 +67,10 @@ $a->config['system']['huburl'] = 'http://pubsubhubbub.appspot.com';
$a->config['system']['rino_encrypt'] = true;
+// allowed themes (change this from admin panel after installation)
+
+$a->config['system']['allowed_themes'] = 'dispy,quattro,testbubble,vier,darkbubble,darkzero,duepuntozero,greenzero,purplezero,quattro-green,slackr';
+
// default system theme
$a->config['system']['theme'] = 'duepuntozero';
diff --git a/include/Scrape.php b/include/Scrape.php
index 52405ae2d..4c4ad3cdb 100755
--- a/include/Scrape.php
+++ b/include/Scrape.php
@@ -230,11 +230,16 @@ function scrape_feed($url) {
$ret = array();
$s = fetch_url($url);
- if(! $s)
+ $headers = $a->get_curl_headers();
+ $code = $a->get_curl_code();
+
+ logger('scrape_feed: returns: ' . $code . ' headers=' . $headers, LOGGER_DEBUG);
+
+ if(! $s) {
+ logger('scrape_feed: no data returned for ' . $url);
return $ret;
+ }
- $headers = $a->get_curl_headers();
- logger('scrape_feed: headers=' . $headers, LOGGER_DEBUG);
$lines = explode("\n",$headers);
if(count($lines)) {
@@ -258,8 +263,10 @@ function scrape_feed($url) {
logger('scrape_feed: parse error: ' . $e);
}
- if(! $dom)
+ if(! $dom) {
+ logger('scrape_feed: failed to parse.');
return $ret;
+ }
$head = $dom->getElementsByTagName('base');
@@ -445,10 +452,19 @@ function probe_url($url, $mode = PROBE_NORMAL) {
$adr = imap_rfc822_parse_adrlist($x->to,'');
if(isset($adr)) {
foreach($adr as $feadr) {
- if((strcasecmp($feadr->mailbox,$name) == 0)
- &&(strcasecmp($feadr->host,$phost) == 0)
+ if((strcasecmp($feadr->mailbox,$name) == 0)
+ &&(strcasecmp($feadr->host,$phost) == 0)
&& (strlen($feadr->personal))) {
- $vcard['fn'] = notags($feadr->personal);
+
+ $personal = imap_mime_header_decode($feadr->personal);
+ $vcard['fn'] = "";
+ foreach($personal as $perspart)
+ if ($perspart->charset != "default")
+ $vcard['fn'] .= iconv($perspart->charset, 'UTF-8//IGNORE', $perspart->text);
+ else
+ $vcard['fn'] .= $perspart->text;
+
+ $vcard['fn'] = notags($vcard['fn']);
}
}
}
@@ -556,7 +572,7 @@ function probe_url($url, $mode = PROBE_NORMAL) {
if($check_feed) {
$feedret = scrape_feed(($poll) ? $poll : $url);
- logger('probe_url: scrape_feed returns: ' . print_r($feedret,true), LOGGER_DATA);
+ logger('probe_url: scrape_feed ' . (($poll)? $poll : $url) . ' returns: ' . print_r($feedret,true), LOGGER_DATA);
if(count($feedret) && ($feedret['feed_atom'] || $feedret['feed_rss'])) {
$poll = ((x($feedret,'feed_atom')) ? unamp($feedret['feed_atom']) : unamp($feedret['feed_rss']));
if(! x($vcard))
diff --git a/include/bb2diaspora.php b/include/bb2diaspora.php
index bcef86616..8487f845a 100755
--- a/include/bb2diaspora.php
+++ b/include/bb2diaspora.php
@@ -55,42 +55,12 @@ function diaspora2bb($s) {
$s = preg_replace("/(\[code\])+(.*?)(\[\/code\])+/ism","[code]$2[/code]", $s);
// Don't show link to full picture (until it is fixed)
- $s = scale_diaspora_images($s, false);
+ $s = scale_external_images($s, false);
return $s;
}
-function scale_diaspora_images($s,$include_link = true) {
-
- $matches = null;
- $c = preg_match_all('/\[img\](.*?)\[\/img\]/ism',$s,$matches,PREG_SET_ORDER);
- if($c) {
- require_once('include/Photo.php');
- foreach($matches as $mtch) {
- logger('scale_diaspora_image: ' . $mtch[1]);
- $i = fetch_url($mtch[1]);
- if($i) {
- $ph = new Photo($i);
- if($ph->is_valid()) {
- if($ph->getWidth() > 600 || $ph->getHeight() > 600) {
- $ph->scaleImage(600);
- $new_width = $ph->getWidth();
- $new_height = $ph->getHeight();
- logger('scale_diaspora_image: ' . $new_width . 'w ' . $new_height . 'h' . 'match: ' . $mtch[0], LOGGER_DEBUG);
- $s = str_replace($mtch[0],'[img=' . $new_width . 'x' . $new_height. ']' . $mtch[1] . '[/img]'
- . "\n" . (($include_link)
- ? '[url=' . $mtch[1] . ']' . t('view full size') . '[/url]' . "\n"
- : ''),$s);
- logger('scale_diaspora_image: new string: ' . $s, LOGGER_DEBUG);
- }
- }
- }
- }
- }
- return $s;
-}
-
function stripdcode_br_cb($s) {
return '[code]' . str_replace('<br />', "\n\t", $s[1]) . '[/code]';
}
diff --git a/include/bbcode.php b/include/bbcode.php
index 32053b4ec..cff26f5c8 100755..100644
--- a/include/bbcode.php
+++ b/include/bbcode.php
@@ -151,7 +151,7 @@ function bbcode($Text,$preserve_nl = false) {
// handle nested lists
$endlessloop = 0;
- while (strpos($Text, "[/list]") and strpos($Text, "[list") and (++$endlessloop < 20)) {
+ while ((strpos($Text, "[/list]") !== false) and (strpos($Text, "[list") !== false) and (++$endlessloop < 20)) {
$Text = preg_replace("/\[list\](.*?)\[\/list\]/ism", '<ul class="listbullet" style="list-style-type: circle;">$1</ul>' ,$Text);
$Text = preg_replace("/\[list=\](.*?)\[\/list\]/ism", '<ul class="listnone" style="list-style-type: none;">$1</ul>' ,$Text);
$Text = preg_replace("/\[list=1\](.*?)\[\/list\]/ism", '<ul class="listdecimal" style="list-style-type: decimal;">$1</ul>' ,$Text);
@@ -194,7 +194,7 @@ function bbcode($Text,$preserve_nl = false) {
// Check for [quote] text
// handle nested quotes
$endlessloop = 0;
- while (strpos($Text, "[/quote]") !== false and strpos($Text, "[quote]") !== false and (++$endlessloop < 20))
+ while ((strpos($Text, "[/quote]") !== false) and (strpos($Text, "[quote]") !== false) and (++$endlessloop < 20))
$Text = preg_replace("/\[quote\](.*?)\[\/quote\]/ism","$QuoteLayout", $Text);
// Check for [quote=Author] text
@@ -203,7 +203,7 @@ function bbcode($Text,$preserve_nl = false) {
// handle nested quotes
$endlessloop = 0;
- while (strpos($Text, "[/quote]") !== false and strpos($Text, "[quote=") !== false and (++$endlessloop < 20))
+ while ((strpos($Text, "[/quote]")!== false) and (strpos($Text, "[quote=") !== false) and (++$endlessloop < 20))
$Text = preg_replace("/\[quote=[\"\']*(.*?)[\"\']*\](.*?)\[\/quote\]/ism",
"<blockquote><strong>" . $t_wrote . "</strong> $2</blockquote>",
$Text);
@@ -285,3 +285,4 @@ function bbcode($Text,$preserve_nl = false) {
return $Text;
}
+
diff --git a/include/config.php b/include/config.php
index 92694f519..2cddda0b8 100755
--- a/include/config.php
+++ b/include/config.php
@@ -162,7 +162,7 @@ function del_config($family,$key) {
if(x($a->config[$family],$key))
unset($a->config[$family][$key]);
$ret = q("DELETE FROM `config` WHERE `cat` = '%s' AND `k` = '%s' LIMIT 1",
- dbesc($cat),
+ dbesc($family),
dbesc($key)
);
return $ret;
diff --git a/include/conversation.php b/include/conversation.php
index 3d13a1179..2ef37694d 100755
--- a/include/conversation.php
+++ b/include/conversation.php
@@ -6,6 +6,11 @@
function localize_item(&$item){
$Text = $item['body'];
+
+
+ // find private image (w/data url) if present and convert image
+ // link to a magic-auth redirect.
+
$saved_image = '';
$img_start = strpos($Text,'[img]data:');
$img_end = strpos($Text,'[/img]');
@@ -232,7 +237,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
$alike = array();
$dlike = array();
-
+ $o = "";
// array with html for each thread (parent+comments)
$threads = array();
@@ -403,6 +408,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
$toplevelprivate = false;
// Take care of author collapsing and comment collapsing
+ // (author collapsing is currently disabled)
// If a single author has more than 3 consecutive top-level posts, squash the remaining ones.
// If there are more than two comments, squash all but the last 2.
@@ -410,7 +416,9 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
$toplevelprivate = (($toplevelpost && $item['private']) ? true : false);
$item_writeable = (($item['writable'] || $item['self']) ? true : false);
- /*if($blowhard == $item['cid'] && (! $item['self']) && ($mode != 'profile') && ($mode != 'notes')) {
+ // DISABLED
+ /*
+ if($blowhard == $item['cid'] && (! $item['self']) && ($mode != 'profile') && ($mode != 'notes')) {
$blowhard_count ++;
if($blowhard_count == 3) {
$o .= '<div class="icollapse-wrapper fakelink" id="icollapse-wrapper-' . $item['parent']
@@ -424,7 +432,9 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
if($blowhard_count >= 3)
$o .= '</div>';
$blowhard_count = 0;
- }*/
+ }
+ // END DISABLED
+ */
$comments_seen = 0;
$comments_collapsed = false;
@@ -436,7 +446,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
}
else {
// prevent private email from leaking into public conversation
- if((! $toplevelpost) && (! toplevelprivate) && ($item['private']) && ($profile_owner != local_user()))
+ if((! $toplevelpost) && (! $toplevelprivate) && ($item['private']) && ($profile_owner != local_user()))
continue;
$comments_seen ++;
}
@@ -641,7 +651,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
$body = prepare_body($item,true);
$tmp_item = replace_macros($template,array(
- '$type' => implode("",array_slice(split("/",$item['verb']),-1)),
+ '$type' => implode("",array_slice(explode("/",$item['verb']),-1)),
'$tags' => $tags,
'$body' => template_escape($body),
'$id' => $item['item_id'],
diff --git a/include/delivery.php b/include/delivery.php
index 677d89388..c1ff07bd5 100755
--- a/include/delivery.php
+++ b/include/delivery.php
@@ -1,6 +1,7 @@
<?php
require_once("boot.php");
require_once('include/queue_fn.php');
+require_once('include/html2plain.php');
function delivery_run($argv, $argc){
global $a, $db;
@@ -8,7 +9,7 @@ function delivery_run($argv, $argc){
if(is_null($a)){
$a = new App;
}
-
+
if(is_null($db)) {
@include(".htconfig.php");
require_once("dba.php");
@@ -272,10 +273,10 @@ function delivery_run($argv, $argc){
if($normal_mode) {
if($item_id == $item['id'] || $item['id'] == $item['parent'])
- $atom .= atom_entry($item,'text',$item_contact,$owner,true);
+ $atom .= atom_entry($item,'text',null,$owner,true);
}
else
- $atom .= atom_entry($item,'text',$item_contact,$owner,true);
+ $atom .= atom_entry($item,'text',null,$owner,true);
}
@@ -293,7 +294,7 @@ function delivery_run($argv, $argc){
$sql_extra = sprintf(" AND `dfrn-id` = '%s' ", dbesc($contact['issued-id']));
else
$sql_extra = sprintf(" AND `issued-id` = '%s' ", dbesc($contact['dfrn-id']));
-
+
$x = q("SELECT `contact`.*, `contact`.`uid` AS `importer_uid`,
`contact`.`pubkey` AS `cpubkey`,
`contact`.`prvkey` AS `cprvkey`,
@@ -322,14 +323,14 @@ function delivery_run($argv, $argc){
require_once('library/simplepie/simplepie.inc');
logger('mod-delivery: local delivery');
local_delivery($x[0],$atom);
- break;
+ break;
}
}
$deliver_status = dfrn_deliver($owner,$contact,$atom);
logger('notifier: dfrn_delivery returns ' . $deliver_status);
-
+
if($deliver_status == (-1)) {
logger('notifier: delivery failed: queuing message');
add_to_queue($contact['id'],NETWORK_DFRN,$atom);
@@ -363,7 +364,7 @@ function delivery_run($argv, $argc){
continue;
if(($top_level) && ($public_message) && ($item['author-link'] === $item['owner-link']) && (! $expire))
- $slaps[] = atom_entry($item,'html',$item_contact,$owner,true);
+ $slaps[] = atom_entry($item,'html',null,$owner,true);
}
logger('notifier: slapdelivery: ' . $contact['name']);
@@ -382,7 +383,7 @@ function delivery_run($argv, $argc){
case NETWORK_MAIL :
case NETWORK_MAIL2:
-
+
if(get_config('system','dfrn_only'))
break;
// WARNING: does not currently convert to RFC2047 header encodings, etc.
@@ -432,9 +433,19 @@ function delivery_run($argv, $argc){
if($reply_to)
$headers .= 'Reply-to: ' . $reply_to . "\n";
- $headers .= 'Message-id: <' . $it['uri'] . '>' . "\n";
+
+ // for testing purposes: Collect exported mails
+ $file = tempnam("/tmp/friendica/", "mail-out-");
+ file_put_contents($file, json_encode($it));
+
+ $headers .= 'Message-Id: <' . iri2msgid($it['uri']). '>' . "\n";
+
+ //logger("Mail: uri: ".$it['uri']." parent-uri ".$it['parent-uri'], LOGGER_DEBUG);
+ //logger("Mail: Data: ".print_r($it, true), LOGGER_DEBUG);
+ //logger("Mail: Data: ".print_r($it, true), LOGGER_DATA);
+
if($it['uri'] !== $it['parent-uri']) {
- $header .= 'References: <' . $it['parent-uri'] . '>' . "\n";
+ $headers .= 'References: <' . iri2msgid($it['parent-uri']) . '>' . "\n";
if(! strlen($it['title'])) {
$r = q("SELECT `title` FROM `item` WHERE `parent-uri` = '%s' LIMIT 1",
dbesc($it['parent-uri'])
@@ -450,13 +461,16 @@ function delivery_run($argv, $argc){
}
}
}
- $headers .= 'MIME-Version: 1.0' . "\n";
- $headers .= 'Content-Type: text/html; charset=UTF-8' . "\n";
+ /*$headers .= 'MIME-Version: 1.0' . "\n";
+ //$headers .= 'Content-Type: text/html; charset=UTF-8' . "\n";
+ $headers .= 'Content-Type: text/plain; charset=UTF-8' . "\n";
$headers .= 'Content-Transfer-Encoding: 8bit' . "\n\n";
$html = prepare_body($it);
- $message = '<html><body>' . $html . '</body></html>';
+ //$message = '<html><body>' . $html . '</body></html>';
+ $message = html2plain($html);
logger('notifier: email delivery to ' . $addr);
- mail($addr, $subject, $message, $headers);
+ mail($addr, $subject, $message, $headers);*/
+ email_send($addr, $subject, $headers, $it);
}
break;
@@ -473,7 +487,7 @@ function delivery_run($argv, $argc){
if((! $contact['pubkey']) && (! $public_message))
break;
-
+
if($target_item['verb'] === ACTIVITY_DISLIKE) {
// unsupported
break;
diff --git a/include/diaspora.php b/include/diaspora.php
index 92f3500f2..dca857a19 100755
--- a/include/diaspora.php
+++ b/include/diaspora.php
@@ -794,15 +794,15 @@ function diaspora_reshare($importer,$xml) {
if(strlen($source_xml->post->asphoto->objectId) && ($source_xml->post->asphoto->objectId != 0) && ($source_xml->post->asphoto->image_url)) {
$body = '[url=' . notags(unxmlify($source_xml->post->asphoto->image_url)) . '][img]' . notags(unxmlify($source_xml->post->asphoto->objectId)) . '[/img][/url]' . "\n";
- $body = scale_diaspora_images($body,false);
+ $body = scale_external_images($body,false);
}
elseif($source_xml->post->asphoto->image_url) {
$body = '[img]' . notags(unxmlify($source_xml->post->asphoto->image_url)) . '[/img]' . "\n";
- $body = scale_diaspora_images($body);
+ $body = scale_external_images($body);
}
elseif($source_xml->post->status_message) {
$body = diaspora2bb($source_xml->post->status_message->raw_message);
- $body = scale_diaspora_images($body);
+ $body = scale_external_images($body);
}
else {
@@ -945,11 +945,11 @@ function diaspora_asphoto($importer,$xml) {
if(strlen($xml->objectId) && ($xml->objectId != 0) && ($xml->image_url)) {
$body = '[url=' . notags(unxmlify($xml->image_url)) . '][img]' . notags(unxmlify($xml->objectId)) . '[/img][/url]' . "\n";
- $body = scale_diaspora_images($body,false);
+ $body = scale_external_images($body,false);
}
elseif($xml->image_url) {
$body = '[img]' . notags(unxmlify($xml->image_url)) . '[/img]' . "\n";
- $body = scale_diaspora_images($body);
+ $body = scale_external_images($body);
}
else {
logger('diaspora_asphoto: no photo url found.');
@@ -1476,7 +1476,7 @@ function diaspora_photo($importer,$xml,$msg) {
$link_text = '[img]' . $remote_photo_path . $remote_photo_name . '[/img]' . "\n";
- $link_text = scale_diaspora_images($link_text);
+ $link_text = scale_external_images($link_text);
if(strpos($parent_item['body'],$link_text) === false) {
$r = q("update item set `body` = '%s', `visible` = 1 where `id` = %d and `uid` = %d limit 1",
@@ -1803,6 +1803,9 @@ function diaspora_profile($importer,$xml) {
if(substr($birthday,5) === substr($contact['bd'],5))
$birthday = $contact['bd'];
+ // TODO: update name on item['author-name'] if the name changed. See consume_feed()
+ // Not doing this currently because D* protocol is scheduled for revision soon.
+
$r = q("UPDATE `contact` SET `name` = '%s', `name-date` = '%s', `photo` = '%s', `thumb` = '%s', `micro` = '%s', `avatar-date` = '%s' , `bd` = '%s' WHERE `id` = %d AND `uid` = %d LIMIT 1",
dbesc($name),
dbesc(datetime_convert()),
diff --git a/include/email.php b/include/email.php
index 3e6a8186d..659978b6e 100755
--- a/include/email.php
+++ b/include/email.php
@@ -1,4 +1,5 @@
<?php
+require_once('include/html2plain.php');
function email_connect($mailbox,$username,$password) {
if(! function_exists('imap_open'))
@@ -79,15 +80,32 @@ function email_get_msg($mbox,$uid) {
if(! $struc)
return $ret;
+ // for testing purposes: Collect imported mails
+ // $file = tempnam("/tmp/friendica2/", "mail-in-");
+ // file_put_contents($file, json_encode($struc));
+
if(! $struc->parts) {
- $ret['body'] = email_get_part($mbox,$uid,$struc,0);
+ $ret['body'] = email_get_part($mbox,$uid,$struc,0, 'html');
+
+ if (trim($ret['body']) == '')
+ $ret['body'] = email_get_part($mbox,$uid,$struc,0, 'plain');
+ else
+ $ret['body'] = html2bbcode($ret['body']);
}
else {
+ $text = '';
+ $html = '';
foreach($struc->parts as $ptop => $p) {
- $x = email_get_part($mbox,$uid,$p,$ptop + 1);
- if($x)
- $ret['body'] = $x;
+ $x = email_get_part($mbox,$uid,$p,$ptop + 1, 'plain');
+ if($x) $text .= $x;
+
+ $x = email_get_part($mbox,$uid,$p,$ptop + 1, 'html');
+ if($x) $html .= $x;
}
+ if (trim($html) != '')
+ $ret['body'] = html2bbcode($html);
+ else
+ $ret['body'] = $text;
}
return $ret;
}
@@ -95,74 +113,81 @@ function email_get_msg($mbox,$uid) {
// At the moment - only return plain/text.
// Later we'll repackage inline images as data url's and make the HTML safe
-function email_get_part($mbox,$uid,$p,$partno) {
- // $partno = '1', '2', '2.1', '2.1.3', etc for multipart, 0 if simple
- global $htmlmsg,$plainmsg,$charset,$attachments;
+function email_get_part($mbox,$uid,$p,$partno, $subtype) {
+ // $partno = '1', '2', '2.1', '2.1.3', etc for multipart, 0 if simple
+ global $htmlmsg,$plainmsg,$charset,$attachments;
- echo $partno;
+ //echo $partno."\n";
- // DECODE DATA
- $data = ($partno)
+ // DECODE DATA
+ $data = ($partno)
? @imap_fetchbody($mbox,$uid,$partno, FT_UID|FT_PEEK)
- : @imap_body($mbox,$uid,FT_UID|FT_PEEK);
-
- // Any part may be encoded, even plain text messages, so check everything.
- if ($p->encoding==4)
- $data = quoted_printable_decode($data);
- elseif ($p->encoding==3)
- $data = base64_decode($data);
-
- // PARAMETERS
- // get all parameters, like charset, filenames of attachments, etc.
- $params = array();
- if ($p->parameters)
- foreach ($p->parameters as $x)
- $params[strtolower($x->attribute)] = $x->value;
- if ($p->dparameters)
- foreach ($p->dparameters as $x)
- $params[strtolower($x->attribute)] = $x->value;
-
- // ATTACHMENT
- // Any part with a filename is an attachment,
- // so an attached text file (type 0) is not mistaken as the message.
-
- if ($params['filename'] || $params['name']) {
- // filename may be given as 'Filename' or 'Name' or both
- $filename = ($params['filename'])? $params['filename'] : $params['name'];
- // filename may be encoded, so see imap_mime_header_decode()
- $attachments[$filename] = $data; // this is a problem if two files have same name
- }
+ : @imap_body($mbox,$uid,FT_UID|FT_PEEK);
+
+ // for testing purposes: Collect imported mails
+ // $file = tempnam("/tmp/friendica2/", "mail-body-");
+ // file_put_contents($file, $data);
+
+ // Any part may be encoded, even plain text messages, so check everything.
+ if ($p->encoding==4)
+ $data = quoted_printable_decode($data);
+ elseif ($p->encoding==3)
+ $data = base64_decode($data);
+
+ // PARAMETERS
+ // get all parameters, like charset, filenames of attachments, etc.
+ $params = array();
+ if ($p->parameters)
+ foreach ($p->parameters as $x)
+ $params[strtolower($x->attribute)] = $x->value;
+ if (isset($p->dparameters) and $p->dparameters)
+ foreach ($p->dparameters as $x)
+ $params[strtolower($x->attribute)] = $x->value;
+
+ // ATTACHMENT
+ // Any part with a filename is an attachment,
+ // so an attached text file (type 0) is not mistaken as the message.
+
+ if ((isset($params['filename']) and $params['filename']) || (isset($params['name']) and $params['name'])) {
+ // filename may be given as 'Filename' or 'Name' or both
+ $filename = ($params['filename'])? $params['filename'] : $params['name'];
+ // filename may be encoded, so see imap_mime_header_decode()
+ $attachments[$filename] = $data; // this is a problem if two files have same name
+ }
- // TEXT
- if ($p->type == 0 && $data) {
- // Messages may be split in different parts because of inline attachments,
- // so append parts together with blank row.
- if (strtolower($p->subtype)=='plain')
- return (trim($data) ."\n\n");
- else
+ // TEXT
+ if ($p->type == 0 && $data) {
+ // Messages may be split in different parts because of inline attachments,
+ // so append parts together with blank row.
+ if (strtolower($p->subtype)==$subtype) {
+ $data = iconv($params['charset'], 'UTF-8//IGNORE', $data);
+ return (trim($data) ."\n\n");
+ } else
$data = '';
// $htmlmsg .= $data ."<br><br>";
- $charset = $params['charset']; // assume all parts are same charset
- }
+ $charset = $params['charset']; // assume all parts are same charset
+ }
- // EMBEDDED MESSAGE
- // Many bounce notifications embed the original message as type 2,
- // but AOL uses type 1 (multipart), which is not handled here.
- // There are no PHP functions to parse embedded messages,
- // so this just appends the raw source to the main message.
-// elseif ($p->type==2 && $data) {
-// $plainmsg .= $data."\n\n";
-// }
-
- // SUBPART RECURSION
- if ($p->parts) {
- foreach ($p->parts as $partno0=>$p2) {
- $x = email_get_part($mbox,$uid,$p2,$partno . '.' . ($partno0+1)); // 1.2, 1.2.1, etc.
- if($x)
- return $x;
+ // EMBEDDED MESSAGE
+ // Many bounce notifications embed the original message as type 2,
+ // but AOL uses type 1 (multipart), which is not handled here.
+ // There are no PHP functions to parse embedded messages,
+ // so this just appends the raw source to the main message.
+// elseif ($p->type==2 && $data) {
+// $plainmsg .= $data."\n\n";
+// }
+
+ // SUBPART RECURSION
+ if (isset($p->parts) and $p->parts) {
+ $x = "";
+ foreach ($p->parts as $partno0=>$p2) {
+ $x .= email_get_part($mbox,$uid,$p2,$partno . '.' . ($partno0+1), $subtype); // 1.2, 1.2.1, etc.
+ //if($x)
+ // return $x;
}
- }
+ return $x;
+ }
}
@@ -216,6 +241,53 @@ function email_header_encode($in_str, $charset) {
$out_str = $start . $out_str . $end;
}
return $out_str;
-}
+}
+
+function email_send($addr, $subject, $headers, $item) {
+ //$headers .= 'MIME-Version: 1.0' . "\n";
+ //$headers .= 'Content-Type: text/html; charset=UTF-8' . "\n";
+ //$headers .= 'Content-Type: text/plain; charset=UTF-8' . "\n";
+ //$headers .= 'Content-Transfer-Encoding: 8bit' . "\n\n";
+
+ $part = uniqid("", true);
+ $html = prepare_body($item);
+ $headers .= "Mime-Version: 1.0\n";
+ $headers .= 'Content-Type: multipart/alternative; boundary="=_'.$part.'"'."\n\n";
+
+ $body = "\n--=_".$part."\n";
+ $body .= "Content-Transfer-Encoding: 8bit\n";
+ $body .= "Content-Type: text/plain; charset=utf-8; format=flowed\n\n";
+
+ $body .= html2plain($html)."\n";
+
+ $body .= "--=_".$part."\n";
+ $body .= "Content-Transfer-Encoding: 8bit\n";
+ $body .= "Content-Type: text/html; charset=utf-8\n\n";
+
+ $body .= '<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">'.$html."</body></html>\n";
+
+ $body .= "--=_".$part."--";
+
+ //$message = '<html><body>' . $html . '</body></html>';
+ //$message = html2plain($html);
+ logger('notifier: email delivery to ' . $addr);
+ mail($addr, $subject, $body, $headers);
+}
+
+function iri2msgid($iri) {
+ if (!strpos($iri, "@"))
+ $msgid = preg_replace("/urn:(\S+):(\S+)\.(\S+):(\d+):(\S+)/i", "urn!$1!$4!$5@$2.$3", $iri);
+ else
+ $msgid = $iri;
+ return($msgid);
+}
+
+function msgid2iri($msgid) {
+ if (strpos($msgid, "@"))
+ $iri = preg_replace("/urn!(\S+)!(\d+)!(\S+)@(\S+)\.(\S+)/i", "urn:$1:$4.$5:$2:$3", $msgid);
+ else
+ $iri = $msgid;
+ return($iri);
+}
diff --git a/include/enotify.php b/include/enotify.php
index 1eb3b5476..76e7eb9dc 100755
--- a/include/enotify.php
+++ b/include/enotify.php
@@ -13,7 +13,9 @@ function notification($params) {
$site_admin = sprintf( t('%s Administrator'), $sitename);
$sender_name = $product;
- $sender_email = t('noreply') . '@' . $a->get_hostname();
+ $hostname = $a->get_hostname();
+ $sender_email = t('noreply') . '@' . $hostname;
+ $additional_mail_header = "";
if(array_key_exists('item',$params)) {
$title = $params['item']['title'];
@@ -25,7 +27,7 @@ function notification($params) {
if($params['type'] == NOTIFY_MAIL) {
- $subject = sprintf( t('New mail received at %s'),$sitename);
+ $subject = sprintf( t('[Friendica:Notify] New mail received at %s'),$sitename);
$preamble = sprintf( t('%s sent you a new private message at %s.'),$params['source_name'],$sitename);
$epreamble = sprintf( t('%s sent you %s.'),'[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('a private message') . '[/url]');
@@ -36,8 +38,16 @@ function notification($params) {
}
if($params['type'] == NOTIFY_COMMENT) {
+// logger("notification: params = " . print_r($params, true), LOGGER_DEBUG);
- $subject = sprintf( t('%s commented on an item at %s'), $params['source_name'], $sitename);
+ $parent_id = $params['parent'];
+
+ // Some mail softwares relies on subject field for threading.
+ // So, we cannot have different subjects for notifications of the same thread.
+ // Before this we have the name of the replier on the subject rendering
+ // differents subjects for messages on the same thread.
+
+ $subject = sprintf( t('[Friendica:Notify] Comment to conversation #%d by %s'), $parent_id, $params['source_name']);
$preamble = sprintf( t('%s commented on an item/conversation you have been following.'), $params['source_name']);
$epreamble = sprintf( t('%s commented in %s.'), '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('a watched conversation') . '[/url]');
@@ -48,7 +58,10 @@ function notification($params) {
}
if($params['type'] == NOTIFY_WALL) {
- $preamble = $subject = sprintf( t('%s posted to your profile wall at %s') , $params['source_name'], $sitename);
+ $subject = sprintf( t('[Friendica:Notify] %s posted to your profile wall') , $params['source_name']);
+
+ $preamble = sprintf( t('%s posted to your profile wall at %s') , $params['source_name'], $sitename);
+
$epreamble = sprintf( t('%s posted to %s') , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('your profile wall.') . '[/url]');
$sitelink = t('Please visit %s to view and/or reply to the conversation.');
@@ -58,7 +71,8 @@ function notification($params) {
}
if($params['type'] == NOTIFY_TAGSELF) {
- $preamble = $subject = sprintf( t('%s tagged you at %s') , $params['source_name'], $sitename);
+ $subject = sprintf( t('[Friendica:Notify] %s tagged you') , $params['source_name']);
+ $preamble = sprintf( t('%s tagged you at %s') , $params['source_name'], $sitename);
$epreamble = sprintf( t('%s %s.') , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=' . $params['link'] . ']' . t('tagged you') . '[/url]');
$sitelink = t('Please visit %s to view and/or reply to the conversation.');
@@ -68,7 +82,8 @@ function notification($params) {
}
if($params['type'] == NOTIFY_TAGSHARE) {
- $preamble = $subject = sprintf( t('%s tagged your post at %s') , $params['source_name'], $sitename);
+ $subject = sprintf( t('[Friendica:Notify] %s tagged your post') , $params['source_name']);
+ $preamble = sprintf( t('%s tagged your post at %s') , $params['source_name'], $sitename);
$epreamble = sprintf( t('%s tagged %s') , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('your post') . '[/url]' );
$sitelink = t('Please visit %s to view and/or reply to the conversation.');
@@ -78,7 +93,7 @@ function notification($params) {
}
if($params['type'] == NOTIFY_INTRO) {
- $subject = sprintf( t('Introduction received at %s'), $sitename);
+ $subject = sprintf( t('[Friendica:Notify] Introduction received'));
$preamble = sprintf( t('You\'ve received an introduction from \'%s\' at %s'), $params['source_name'], $sitename);
$epreamble = sprintf( t('You\'ve received %s from %s.'), '[url=$itemlink]' . t('an introduction') . '[/url]' , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]');
$body = sprintf( t('You may visit their profile at %s'),$params['source_link']);
@@ -90,7 +105,7 @@ function notification($params) {
}
if($params['type'] == NOTIFY_SUGGEST) {
- $subject = sprintf( t('Friend suggestion received at %s'), $sitename);
+ $subject = sprintf( t('[Friendica:Notify] Friend suggestion received'));
$preamble = sprintf( t('You\'ve received a friend suggestion from \'%s\' at %s'), $params['source_name'], $sitename);
$epreamble = sprintf( t('You\'ve received %s for %s from %s.'),
'[url=$itemlink]' . t('a friend suggestion') . '[/url]',
@@ -126,22 +141,34 @@ function notification($params) {
} while($dups == true);
-
+ $datarray = array();
+ $datarray['hash'] = $hash;
+ $datarray['name'] = $params['source_name'];
+ $datarray['url'] = $params['source_link'];
+ $datarray['photo'] = $params['source_photo'];
+ $datarray['date'] = datetime_convert();
+ $datarray['uid'] = $params['uid'];
+ $datarray['link'] = $itemlink;
+ $datarray['type'] = $params['type'];
+ $datarray['verb'] = $params['verb'];
+ $datarray['otype'] = $params['otype'];
+
+ call_hooks('enotify_store', $datarray);
// create notification entry in DB
$r = q("insert into notify (hash,name,url,photo,date,uid,link,type,verb,otype)
values('%s','%s','%s','%s','%s',%d,'%s',%d,'%s','%s')",
- dbesc($hash),
- dbesc($params['source_name']),
- dbesc($params['source_link']),
- dbesc($params['source_photo']),
- dbesc(datetime_convert()),
- intval($params['uid']),
- dbesc($itemlink),
- intval($params['type']),
- dbesc($params['verb']),
- dbesc($params['otype'])
+ dbesc($datarray['hash']),
+ dbesc($datarray['name']),
+ dbesc($datarray['url']),
+ dbesc($datarray['photo']),
+ dbesc($datarray['date']),
+ intval($datarray['uid']),
+ dbesc($datarray['link']),
+ intval($datarray['type']),
+ dbesc($datarray['verb']),
+ dbesc($datarray['otype'])
);
$r = q("select id from notify where hash = '%s' and uid = %d limit 1",
@@ -170,50 +197,111 @@ function notification($params) {
logger('notification: sending notification email');
+ $id_for_parent = "${params['parent']}@${hostname}";
+
+ // Is this the first email notification for this parent item and user?
+
+ $r = q("select `id` from `notify-threads` where `master-parent-item` = %d and `receiver-uid` = %d limit 1",
+ intval($params['parent']),
+ intval($params['uid']) );
+
+ // If so, create the record of it and use a message-id smtp header.
+
+ if(!$r) {
+ logger("norify_id:" . intval($notify_id). ", parent: " . intval($params['parent']) . "uid: " .
+intval($params['uid']), LOGGER_DEBUG);
+ $r = q("insert into `notify-threads` (`notify-id`, `master-parent-item`, `receiver-uid`, `parent-item`)
+ values(%d,%d,%d,%d)",
+ intval($notify_id),
+ intval($params['parent']),
+ intval($params['uid']),
+ 0 );
+
+ $additional_mail_header .= "Message-ID: <${id_for_parent}>\n";
+ $log_msg = "include/enotify: No previous notification found for this parent:\n" .
+ " parent: ${params['parent']}\n" . " uid : ${params['uid']}\n";
+ logger($log_msg, LOGGER_DEBUG);
+ }
+
+ // If not, just "follow" the thread.
+
+ else {
+ $additional_mail_header = "References: <${id_for_parent}>\nIn-Reply-To: <${id_for_parent}>\n";
+ logger("include/enotify: There's already a notification for this parent:\n" . print_r($r, true), LOGGER_DEBUG);
+ }
+
+
$textversion = strip_tags(html_entity_decode(bbcode(stripslashes(str_replace(array("\\r\\n", "\\r", "\\n"), "\n",
$body))),ENT_QUOTES,'UTF-8'));
$htmlversion = html_entity_decode(bbcode(stripslashes(str_replace(array("\\r\\n", "\\r","\\n\\n" ,"\\n"),
"<br />\n",$body))));
+ $datarray = array();
+ $datarray['banner'] = $banner;
+ $datarray['product'] = $product;
+ $datarray['preamble'] = $preamble;
+ $datarray['sitename'] = $sitename;
+ $datarray['siteurl'] = $siteurl;
+ $datarray['type'] = $params['type'];
+ $datarray['parent'] = $params['parent'];
+ $datarray['source_name'] = $params['source_name'];
+ $datarray['source_link'] = $params['source_link'];
+ $datarray['source_photo'] = $params['source_photo'];
+ $datarray['uid'] = $params['uid'];
+ $datarray['username'] = $params['to_name'];
+ $datarray['hsitelink'] = $hsitelink;
+ $datarray['tsitelink'] = $tsitelink;
+ $datarray['hitemlink'] = '<a href="' . $itemlink . '">' . $itemlink . '</a>';
+ $datarray['titemlink'] = $itemlink;
+ $datarray['thanks'] = $thanks;
+ $datarray['site_admin'] = $site_admin;
+ $datarray['title'] = stripslashes($title);
+ $datarray['htmlversion'] = $htmlversion;
+ $datarray['textversion'] = $textversion;
+ $datarray['subject'] = $subject;
+ $datarray['headers'] = $additional_mail_header;
+
+ call_hooks('enotify_mail', $datarray);
+
// load the template for private message notifications
$tpl = get_markup_template('email_notify_html.tpl');
$email_html_body = replace_macros($tpl,array(
- '$banner' => $banner,
- '$product' => $product,
- '$preamble' => $preamble,
- '$sitename' => $sitename,
- '$siteurl' => $siteurl,
- '$source_name' => $params['source_name'],
- '$source_link' => $params['source_link'],
- '$source_photo' => $params['source_photo'],
- '$username' => $params['to_name'],
- '$hsitelink' => $hsitelink,
- '$itemlink' => '<a href="' . $itemlink . '">' . $itemlink . '</a>',
- '$thanks' => $thanks,
- '$site_admin' => $site_admin,
- '$title' => stripslashes($title),
- '$htmlversion' => $htmlversion,
+ '$banner' => $datarray['banner'],
+ '$product' => $datarray['product'],
+ '$preamble' => $datarray['preamble'],
+ '$sitename' => $datarray['sitename'],
+ '$siteurl' => $datarray['siteurl'],
+ '$source_name' => $datarray['source_name'],
+ '$source_link' => $datarray['source_link'],
+ '$source_photo' => $datarray['source_photo'],
+ '$username' => $datarray['to_name'],
+ '$hsitelink' => $datarray['hsitelink'],
+ '$hitemlink' => $datarray['hitemlink'],
+ '$thanks' => $datarray['thanks'],
+ '$site_admin' => $datarray['site_admin'],
+ '$title' => $datarray['title'],
+ '$htmlversion' => $datarray['htmlversion'],
));
// load the template for private message notifications
$tpl = get_markup_template('email_notify_text.tpl');
$email_text_body = replace_macros($tpl,array(
- '$banner' => $banner,
- '$product' => $product,
- '$preamble' => $preamble,
- '$sitename' => $sitename,
- '$siteurl' => $siteurl,
- '$source_name' => $params['source_name'],
- '$source_link' => $params['source_link'],
- '$source_photo' => $params['source_photo'],
- '$username' => $params['to_name'],
- '$tsitelink' => $tsitelink,
- '$itemlink' => $itemlink,
- '$thanks' => $thanks,
- '$site_admin' => $site_admin,
- '$title' => stripslashes($title),
- '$textversion' => $textversion,
+ '$banner' => $datarray['banner'],
+ '$product' => $datarray['product'],
+ '$preamble' => $datarray['preamble'],
+ '$sitename' => $datarray['sitename'],
+ '$siteurl' => $datarray['siteurl'],
+ '$source_name' => $datarray['source_name'],
+ '$source_link' => $datarray['source_link'],
+ '$source_photo' => $datarray['source_photo'],
+ '$username' => $datarray['to_name'],
+ '$tsitelink' => $datarray['tsitelink'],
+ '$titemlink' => $datarray['titemlink'],
+ '$thanks' => $datarray['thanks'],
+ '$site_admin' => $datarray['site_admin'],
+ '$title' => $datarray['title'],
+ '$textversion' => $datarray['textversion'],
));
// logger('text: ' . $email_text_body);
@@ -225,9 +313,10 @@ function notification($params) {
'fromEmail' => $sender_email,
'replyTo' => $sender_email,
'toEmail' => $params['to_email'],
- 'messageSubject' => $subject,
+ 'messageSubject' => $datarray['subject'],
'htmlVersion' => $email_html_body,
- 'textVersion' => $email_text_body
+ 'textVersion' => $email_text_body,
+ 'additionalMailHeader' => $datarray['headers'],
));
}
@@ -248,6 +337,7 @@ class enotify {
* @param messageSubject subject of the message
* @param htmlVersion html version of the message
* @param textVersion text only version of the message
+ * @param additionalMailHeader additions to the smtp mail header
*/
static public function send($params) {
@@ -262,6 +352,7 @@ class enotify {
// generate a multipart/alternative message header
$messageHeader =
+ $params['additionalMailHeader'] .
"From: {$params['fromName']} <{$params['fromEmail']}>\n" .
"Reply-To: {$params['fromName']} <{$params['replyTo']}>\n" .
"MIME-Version: 1.0\n" .
@@ -291,4 +382,4 @@ class enotify {
logger("notification: enotify::send returns " . $res, LOGGER_DEBUG);
}
}
-?> \ No newline at end of file
+?>
diff --git a/include/event.php b/include/event.php
index c7669b381..4a9a9a004 100755
--- a/include/event.php
+++ b/include/event.php
@@ -163,7 +163,7 @@ function bbtoevent($s) {
if(preg_match("/\[event\-adjust\](.*?)\[\/event\-adjust\]/is",$s,$match))
$ev['adjust'] = $match[1];
$match = '';
- $ev['nofinish'] = (($ev['start'] && (! $ev['finish'])) ? 1 : 0);
+ $ev['nofinish'] = (($ev['start'] && (!x($ev, 'finish') || !$ev['finish'])) ? 1 : 0);
return $ev;
}
diff --git a/include/html2bbcode.php b/include/html2bbcode.php
index d8f1a24f1..51d629940 100755
--- a/include/html2bbcode.php
+++ b/include/html2bbcode.php
@@ -10,7 +10,7 @@ Originally made for the syncom project: http://wiki.piratenpartei.de/Syncom
function node2bbcode(&$doc, $oldnode, $attributes, $startbb, $endbb)
{
do {
- $done = node2bbcodesub(&$doc, $oldnode, $attributes, $startbb, $endbb);
+ $done = node2bbcodesub($doc, $oldnode, $attributes, $startbb, $endbb);
} while ($done);
}
@@ -258,7 +258,7 @@ function html2bbcode($message)
"[hr]\n",
"\n[list",
"[/list]\n",
- "\n[/list]",
+ "\n[/",
"[list]\n",
"[list=1]\n",
"\n[*]"),
@@ -268,7 +268,7 @@ function html2bbcode($message)
"[hr]",
"[list",
"[/list]",
- "[/list]",
+ "[/",
"[list]",
"[list=1]",
"[*]"),
diff --git a/include/html2plain.php b/include/html2plain.php
new file mode 100644
index 000000000..2a4cf6639
--- /dev/null
+++ b/include/html2plain.php
@@ -0,0 +1,180 @@
+<?php
+require_once "html2bbcode.php";
+
+function breaklines($line, $level)
+{
+ $wraplen = 75-$level;
+
+ $newlines = array();
+
+ do {
+ $oldline = $line;
+
+ $subline = substr($line, 0, $wraplen);
+
+ $pos = strrpos($subline, ' ');
+
+ if ($pos == 0)
+ $pos = strpos($line, ' ');
+
+ if (($pos > 0) and strlen($line) > $wraplen) {
+ $newline = trim(substr($line, 0, $pos));
+ if ($level > 0)
+ $newline = str_repeat(">", $level).' '.$newline;
+
+ $newlines[] = $newline." ";
+ $line = substr($line, $pos+1);
+ }
+
+ } while ((strlen($line) > $wraplen) and !($oldline == $line));
+
+ if ($level > 0)
+ $line = str_repeat(">", $level).' '.$line;
+
+ $newlines[] = $line;
+
+
+ return(implode($newlines, "\n"));
+}
+
+function quotelevel($message)
+{
+ $lines = explode("\n", $message);
+
+ $newlines = array();
+ $level = 0;
+ foreach($lines as $line) {;
+ $line = trim($line);
+ $startquote = false;
+ while (strpos("*".$line, '[quote]') > 0) {
+ $level++;
+ $pos = strpos($line, '[quote]');
+ $line = substr($line, 0, $pos).substr($line, $pos+7);
+ $startquote = true;
+ }
+
+ $currlevel = $level;
+
+ while (strpos("*".$line, '[/quote]') > 0) {
+ $level--;
+ if ($level < 0)
+ $level = 0;
+
+ $pos = strpos($line, '[/quote]');
+ $line = substr($line, 0, $pos).substr($line, $pos+8);
+ }
+
+ if (!$startquote or ($line != ''))
+ $newlines[] = breaklines($line, $currlevel);
+ }
+ return(implode($newlines, "\n"));
+}
+
+function html2plain($html)
+{
+ global $lang;
+
+ $message = str_replace("\r", "", $html);
+
+ $doc = new DOMDocument();
+ $doc->preserveWhiteSpace = false;
+
+ $message = mb_convert_encoding($message, 'HTML-ENTITIES', "UTF-8");
+
+ @$doc->loadHTML($message);
+
+ $xpath = new DomXPath($doc);
+ $list = $xpath->query("//pre");
+ foreach ($list as $node) {
+ $node->nodeValue = str_replace("\n", "\r", $node->nodeValue);
+ }
+
+ $message = $doc->saveHTML();
+ $message = str_replace(array("\n<", ">\n", "\r", "\n", "\xC3\x82\xC2\xA0"), array("<", ">", "<br>", " ", ""), $message);
+ $message = preg_replace('= [\s]*=i', " ", $message);
+
+ // nach <a href="...">...</a> suchen, die ... miteinander vergleichen und bei Gleichheit durch ein einzelnes ... ersetzen.
+ $pattern = '/<a.*?href="(.*?)".*?>(.*?)<\/a>/is';
+ preg_match_all($pattern, $message, $result, PREG_SET_ORDER);
+
+ foreach ($result as $treffer) {
+ if ($treffer[1] == $treffer[2]) {
+ $search = '<a href="'.$treffer[1].'" target="_blank">'.$treffer[1].'</a>';
+ $message = str_replace($search, $treffer[1], $message);
+ }
+ }
+ @$doc->loadHTML($message);
+
+ node2bbcode($doc, 'html', array(), '', '');
+ node2bbcode($doc, 'body', array(), '', '');
+
+ // MyBB-Auszeichnungen
+ node2bbcode($doc, 'span', array('style'=>'text-decoration: underline;'), '_', '_');
+ node2bbcode($doc, 'span', array('style'=>'font-style: italic;'), '/', '/');
+ node2bbcode($doc, 'span', array('style'=>'font-weight: bold;'), '*', '*');
+
+ node2bbcode($doc, 'strong', array(), '*', '*');
+ node2bbcode($doc, 'b', array(), '*', '*');
+ node2bbcode($doc, 'i', array(), '/', '/');
+ node2bbcode($doc, 'u', array(), '_', '_');
+
+ node2bbcode($doc, 'blockquote', array(), '[quote]', "[/quote]\n");
+
+ node2bbcode($doc, 'br', array(), "\n", '');
+
+ node2bbcode($doc, 'span', array(), "", "");
+ node2bbcode($doc, 'pre', array(), "", "");
+ node2bbcode($doc, 'div', array(), "\r", "\r");
+ node2bbcode($doc, 'p', array(), "\n", "\n");
+
+ //node2bbcode($doc, 'ul', array(), "\n[list]", "[/list]\n");
+ //node2bbcode($doc, 'ol', array(), "\n[list=1]", "[/list]\n");
+ node2bbcode($doc, 'li', array(), "\n* ", "\n");
+
+ node2bbcode($doc, 'hr', array(), str_repeat("-", 70), "");
+
+ node2bbcode($doc, 'tr', array(), "\n", "");
+ node2bbcode($doc, 'td', array(), "\t", "");
+
+ node2bbcode($doc, 'h1', array(), "\n\n*", "*\n");
+ node2bbcode($doc, 'h2', array(), "\n\n*", "*\n");
+ node2bbcode($doc, 'h3', array(), "\n\n*", "*\n");
+ node2bbcode($doc, 'h4', array(), "\n\n*", "*\n");
+ node2bbcode($doc, 'h5', array(), "\n\n*", "*\n");
+ node2bbcode($doc, 'h6', array(), "\n\n*", "*\n");
+
+ node2bbcode($doc, 'a', array('href'=>'/(.+)/'), ' $1', '', true);
+ node2bbcode($doc, 'img', array('alt'=>'/(.+)/'), '$1', '');
+ node2bbcode($doc, 'img', array('title'=>'/(.+)/'), '$1', '');
+ node2bbcode($doc, 'img', array(), '', '');
+ node2bbcode($doc, 'img', array('src'=>'/(.+)/'), '[img]$1', '[/img]');
+
+ $message = $doc->saveHTML();
+
+ $message = str_replace("[img]", "", $message);
+ $message = str_replace("[/img]", "", $message);
+
+ // was ersetze ich da?
+ // Irgendein stoerrisches UTF-Zeug
+ $message = str_replace(chr(194).chr(160), ' ', $message);
+
+ $message = str_replace("&nbsp;", " ", $message);
+
+ // Aufeinanderfolgende DIVs
+ $message = preg_replace('=\r *\r=i', "\n", $message);
+ $message = str_replace("\r", "\n", $message);
+
+ $message = strip_tags($message);
+
+ $message = html_entity_decode($message, ENT_QUOTES, 'UTF-8');
+
+ do {
+ $oldmessage = $message;
+ $message = str_replace("\n\n\n", "\n\n", $message);
+ } while ($oldmessage != $message);
+
+ $message = quotelevel(trim($message));
+
+ return(trim($message));
+}
+?>
diff --git a/include/items.php b/include/items.php
index 347826042..250d023ce 100755
--- a/include/items.php
+++ b/include/items.php
@@ -308,7 +308,7 @@ function get_atom_elements($feed,$item) {
if($rawauthor && $rawauthor[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_10]['link']) {
$base = $rawauthor[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_10]['link'];
foreach($base as $link) {
- if(! $res['author-avatar']) {
+ if(!x($res, 'author-avatar') || !$res['author-avatar']) {
if($link['attribs']['']['rel'] === 'photo' || $link['attribs']['']['rel'] === 'avatar')
$res['author-avatar'] = unxmlify($link['attribs']['']['href']);
}
@@ -323,7 +323,7 @@ function get_atom_elements($feed,$item) {
foreach($base as $link) {
if($link['attribs']['']['rel'] === 'alternate' && (! $res['author-link']))
$res['author-link'] = unxmlify($link['attribs']['']['href']);
- if(! $res['author-avatar']) {
+ if(!x($res, 'author-avatar') || !$res['author-avatar']) {
if($link['attribs']['']['rel'] === 'avatar' || $link['attribs']['']['rel'] === 'photo')
$res['author-avatar'] = unxmlify($link['attribs']['']['href']);
}
@@ -503,7 +503,7 @@ function get_atom_elements($feed,$item) {
$base = $rawowner[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_10]['link'];
foreach($base as $link) {
- if(! $res['owner-avatar']) {
+ if(!x($res, 'owner-avatar') || !$res['owner-avatar']) {
if($link['attribs']['']['rel'] === 'photo' || $link['attribs']['']['rel'] === 'avatar')
$res['owner-avatar'] = unxmlify($link['attribs']['']['href']);
}
@@ -1308,12 +1308,28 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0)
}
if((is_array($contact)) && ($name_updated) && (strlen($new_name)) && ($name_updated > $contact['name-date'])) {
- q("UPDATE `contact` SET `name` = '%s', `name-date` = '%s' WHERE `uid` = %d AND `id` = %d LIMIT 1",
+ $r = q("select * from contact where uid = %d and id = %d limit 1",
+ intval($contact['uid']),
+ intval($contact['id'])
+ );
+
+ $x = q("UPDATE `contact` SET `name` = '%s', `name-date` = '%s' WHERE `uid` = %d AND `id` = %d LIMIT 1",
dbesc(notags(trim($new_name))),
dbesc(datetime_convert()),
intval($contact['uid']),
intval($contact['id'])
);
+
+ // do our best to update the name on content items
+
+ if(count($r)) {
+ q("update item set `author-name` = '%s' where `author-name` = '%s' and `author-link` = '%s' and uid = %d",
+ dbesc(notags(trim($new_name))),
+ dbesc($r[0]['name']),
+ dbesc($r[0]['url']),
+ intval($contact['uid'])
+ );
+ }
}
if(strlen($birthday)) {
@@ -1505,13 +1521,18 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0)
$item_id = $item->get_id();
$datarray = get_atom_elements($feed,$item);
- if(! x($datarray,'author-name'))
+
+ if((! x($datarray,'author-name')) && ($contact['network'] != NETWORK_DFRN))
$datarray['author-name'] = $contact['name'];
- if(! x($datarray,'author-link'))
+ if((! x($datarray,'author-link')) && ($contact['network'] != NETWORK_DFRN))
$datarray['author-link'] = $contact['url'];
- if(! x($datarray,'author-avatar'))
+ if((! x($datarray,'author-avatar')) && ($contact['network'] != NETWORK_DFRN))
$datarray['author-avatar'] = $contact['thumb'];
+ if((! x($datarray,'author-name')) || (! x($datarray,'author-link'))) {
+ logger('consume_feed: no author information! ' . print_r($datarray,true));
+ continue;
+ }
$r = q("SELECT `uid`, `last-child`, `edited`, `body` FROM `item` WHERE `uri` = '%s' AND `uid` = %d LIMIT 1",
dbesc($item_id),
@@ -1614,14 +1635,19 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0)
$datarray = get_atom_elements($feed,$item);
if(is_array($contact)) {
- if(! x($datarray,'author-name'))
+ if((! x($datarray,'author-name')) && ($contact['network'] != NETWORK_DFRN))
$datarray['author-name'] = $contact['name'];
- if(! x($datarray,'author-link'))
+ if((! x($datarray,'author-link')) && ($contact['network'] != NETWORK_DFRN))
$datarray['author-link'] = $contact['url'];
- if(! x($datarray,'author-avatar'))
+ if((! x($datarray,'author-avatar')) && ($contact['network'] != NETWORK_DFRN))
$datarray['author-avatar'] = $contact['thumb'];
}
+ if((! x($datarray,'author-name')) || (! x($datarray,'author-link'))) {
+ logger('consume_feed: no author information! ' . print_r($datarray,true));
+ continue;
+ }
+
// special handling for events
if((x($datarray,'object-type')) && ($datarray['object-type'] === ACTIVITY_OBJ_EVENT)) {
@@ -2197,7 +2223,8 @@ function local_delivery($importer,$data) {
'source_photo' => ((link_compare($datarray['author-link'],$importer['url']))
? $importer['thumb'] : $datarray['author-avatar']),
'verb' => ACTIVITY_POST,
- 'otype' => 'item'
+ 'otype' => 'item',
+ 'parent' => $parent,
));
@@ -2291,7 +2318,7 @@ function local_delivery($importer,$data) {
if($datarray['type'] != 'activity') {
- $myconv = q("SELECT `author-link`, `author-avatar` FROM `item` WHERE `parent-uri` = '%s' AND `uid` = %d AND `parent` != 0 ",
+ $myconv = q("SELECT `author-link`, `author-avatar`, `parent` FROM `item` WHERE `parent-uri` = '%s' AND `uid` = %d AND `parent` != 0 ",
dbesc($parent_uri),
intval($importer['importer_uid'])
);
@@ -2304,6 +2331,8 @@ function local_delivery($importer,$data) {
continue;
require_once('include/enotify.php');
+
+ $conv_parent = $conv['parent'];
notification(array(
'type' => NOTIFY_COMMENT,
@@ -2319,7 +2348,8 @@ function local_delivery($importer,$data) {
'source_photo' => ((link_compare($datarray['author-link'],$importer['url']))
? $importer['thumb'] : $datarray['author-avatar']),
'verb' => ACTIVITY_POST,
- 'otype' => 'item'
+ 'otype' => 'item',
+ 'parent' => $conv_parent,
));
@@ -2394,7 +2424,7 @@ function local_delivery($importer,$data) {
// This is my contact on another system, but it's really me.
// Turn this into a wall post.
- if($contact['remote_self'])
+ if($importer['remote_self'])
$datarray['wall'] = 1;
$datarray['parent-uri'] = $item_id;
diff --git a/include/network.php b/include/network.php
index 25db62d16..c72919dd8 100755
--- a/include/network.php
+++ b/include/network.php
@@ -17,7 +17,7 @@ function fetch_url($url,$binary = false, &$redirects = 0, $timeout = 0, $accept_
if (!is_null($accept_content)){
curl_setopt($ch,CURLOPT_HTTPHEADER, array (
- "Accept: "+$accept_content
+ "Accept: " . $accept_content
));
}
@@ -60,6 +60,7 @@ function fetch_url($url,$binary = false, &$redirects = 0, $timeout = 0, $accept_
$curl_info = @curl_getinfo($ch);
$http_code = $curl_info['http_code'];
+// logger('fetch_url:' . $http_code . ' data: ' . $s);
$header = '';
// Pull out multiple headers, e.g. proxy and continuation headers
@@ -74,11 +75,13 @@ function fetch_url($url,$binary = false, &$redirects = 0, $timeout = 0, $accept_
if($http_code == 301 || $http_code == 302 || $http_code == 303 || $http_code == 307) {
$matches = array();
preg_match('/(Location:|URI:)(.*?)\n/', $header, $matches);
- $url = trim(array_pop($matches));
- $url_parsed = @parse_url($url);
+ $newurl = trim(array_pop($matches));
+ if(strpos($newurl,'/') === 0)
+ $newurl = $url . $newurl;
+ $url_parsed = @parse_url($newurl);
if (isset($url_parsed)) {
$redirects++;
- return fetch_url($url,$binary,$redirects,$timeout);
+ return fetch_url($newurl,$binary,$redirects,$timeout);
}
}
@@ -163,11 +166,13 @@ function post_url($url,$params, $headers = null, &$redirects = 0, $timeout = 0)
if($http_code == 301 || $http_code == 302 || $http_code == 303) {
$matches = array();
preg_match('/(Location:|URI:)(.*?)\n/', $header, $matches);
- $url = trim(array_pop($matches));
- $url_parsed = @parse_url($url);
+ $newurl = trim(array_pop($matches));
+ if(strpos($newurl,'/') === 0)
+ $newurl = $url . $newurl;
+ $url_parsed = @parse_url($newurl);
if (isset($url_parsed)) {
$redirects++;
- return post_url($url,$params,$headers,$redirects,$timeout);
+ return fetch_url($newurl,$binary,$redirects,$timeout);
}
}
$a->set_curl_code($http_code);
@@ -776,3 +781,43 @@ function add_fcontact($arr,$update = false) {
return $r;
}
+
+
+function scale_external_images($s,$include_link = true) {
+
+ $a = get_app();
+
+ $matches = null;
+ $c = preg_match_all('/\[img\](.*?)\[\/img\]/ism',$s,$matches,PREG_SET_ORDER);
+ if($c) {
+ require_once('include/Photo.php');
+ foreach($matches as $mtch) {
+ logger('scale_external_image: ' . $mtch[1]);
+ $hostname = str_replace('www.','',substr($a->get_baseurl(),strpos($a->get_baseurl(),'://')+3));
+ if(stristr($mtch[1],$hostname))
+ continue;
+ $i = fetch_url($mtch[1]);
+ if($i) {
+ $ph = new Photo($i);
+ if($ph->is_valid()) {
+ $orig_width = $ph->getWidth();
+ $orig_height = $ph->getHeight();
+
+ if($orig_width > 640 || $orig_height > 640) {
+
+ $ph->scaleImage(640);
+ $new_width = $ph->getWidth();
+ $new_height = $ph->getHeight();
+ logger('scale_external_images: ' . $orig_width . '->' . $new_width . 'w ' . $orig_height . '->' . $new_height . 'h' . ' match: ' . $mtch[0], LOGGER_DEBUG);
+ $s = str_replace($mtch[0],'[img=' . $new_width . 'x' . $new_height. ']' . $mtch[1] . '[/img]'
+ . "\n" . (($include_link)
+ ? '[url=' . $mtch[1] . ']' . t('view full size') . '[/url]' . "\n"
+ : ''),$s);
+ logger('scale_external_images: new string: ' . $s, LOGGER_DEBUG);
+ }
+ }
+ }
+ }
+ }
+ return $s;
+}
diff --git a/include/notifier.php b/include/notifier.php
index 37bc6dae5..4765cca06 100755
--- a/include/notifier.php
+++ b/include/notifier.php
@@ -2,6 +2,7 @@
require_once("boot.php");
require_once('include/queue_fn.php');
+require_once('include/html2plain.php');
/*
* This file was at one time responsible for doing all deliveries, but this caused
@@ -382,8 +383,8 @@ function notifier_run($argv, $argc){
continue;
if($item['id'] == $item_id) {
logger('notifier: followup: item: ' . print_r($item,true), LOGGER_DATA);
- $slap = atom_entry($item,'html',$owner,$owner,false);
- $atom .= atom_entry($item,'text',$owner,$owner,false);
+ $slap = atom_entry($item,'html',null,$owner,false);
+ $atom .= atom_entry($item,'text',null,$owner,false);
}
}
}
@@ -410,13 +411,13 @@ function notifier_run($argv, $argc){
// older sites without a corresponding dfrn_notify change may do the wrong thing.
if($item_id == $item['id'] || $item['id'] == $item['parent'])
- $atom .= atom_entry($item,'text',$contact,$owner,true);
+ $atom .= atom_entry($item,'text',null,$owner,true);
}
else
- $atom .= atom_entry($item,'text',$contact,$owner,true);
+ $atom .= atom_entry($item,'text',null,$owner,true);
if(($top_level) && ($public_message) && ($item['author-link'] === $item['owner-link']) && (! $expire))
- $slaps[] = atom_entry($item,'html',$contact,$owner,true);
+ $slaps[] = atom_entry($item,'html',null,$owner,true);
}
}
}
@@ -633,7 +634,7 @@ function notifier_run($argv, $argc){
);
if($r1 && $r1[0]['reply_to'])
$reply_to = $r1[0]['reply_to'];
-
+
$subject = (($it['title']) ? email_header_encode($it['title'],'UTF-8') : t("\x28no subject\x29")) ;
// only expose our real email address to true friends
@@ -646,10 +647,14 @@ function notifier_run($argv, $argc){
if($reply_to)
$headers .= 'Reply-to: ' . $reply_to . "\n";
- $headers .= 'Message-id: <' . $it['uri'] . '>' . "\n";
+ // for testing purposes: Collect exported mails
+ $file = tempnam("/tmp/friendica/", "mail-out2-");
+ file_put_contents($file, json_encode($it));
+
+ $headers .= 'Message-Id: <' . iri2msgid($it['uri']) . '>' . "\n";
if($it['uri'] !== $it['parent-uri']) {
- $header .= 'References: <' . $it['parent-uri'] . '>' . "\n";
+ $headers .= 'References: <' . iri2msgid($it['parent-uri']) . '>' . "\n";
if(! strlen($it['title'])) {
$r = q("SELECT `title` FROM `item` WHERE `parent-uri` = '%s' LIMIT 1",
dbesc($it['parent-uri'])
@@ -666,13 +671,16 @@ function notifier_run($argv, $argc){
}
}
- $headers .= 'MIME-Version: 1.0' . "\n";
- $headers .= 'Content-Type: text/html; charset=UTF-8' . "\n";
+ /*$headers .= 'MIME-Version: 1.0' . "\n";
+ //$headers .= 'Content-Type: text/html; charset=UTF-8' . "\n";
+ $headers .= 'Content-Type: text/plain; charset=UTF-8' . "\n";
$headers .= 'Content-Transfer-Encoding: 8bit' . "\n\n";
$html = prepare_body($it);
- $message = '<html><body>' . $html . '</body></html>';
+ //$message = '<html><body>' . $html . '</body></html>';
+ $message = html2plain($html);
logger('notifier: email delivery to ' . $addr);
- mail($addr, $subject, $message, $headers);
+ mail($addr, $subject, $message, $headers);*/
+ email_send($addr, $subject, $headers, $it);
}
break;
case NETWORK_DIASPORA:
@@ -719,7 +727,7 @@ function notifier_run($argv, $argc){
// we are the relay - send comments, likes and unlikes to our conversants
diaspora_send_relay($target_item,$owner,$contact);
break;
- }
+ }
elseif(($top_level) && (! $walltowall)) {
// currently no workable solution for sending walltowall
diaspora_send_status($target_item,$owner,$contact);
diff --git a/include/plugin.php b/include/plugin.php
index 85b51edff..8280b1022 100755
--- a/include/plugin.php
+++ b/include/plugin.php
@@ -166,17 +166,80 @@ function call_hooks($name, &$data = null) {
if (! function_exists('get_plugin_info')){
function get_plugin_info($plugin){
- if (!is_file("addon/$plugin/$plugin.php")) return false;
+ $info=Array(
+ 'name' => $plugin,
+ 'description' => "",
+ 'author' => array(),
+ 'version' => ""
+ );
+
+ if (!is_file("addon/$plugin/$plugin.php")) return $info;
$f = file_get_contents("addon/$plugin/$plugin.php");
$r = preg_match("|/\*.*\*/|msU", $f, $m);
+ if ($r){
+ $ll = explode("\n", $m[0]);
+ foreach( $ll as $l ) {
+ $l = trim($l,"\t\n\r */");
+ if ($l!=""){
+ list($k,$v) = array_map("trim", explode(":",$l,2));
+ $k= strtolower($k);
+ if ($k=="author"){
+ $r=preg_match("|([^<]+)<([^>]+)>|", $v, $m);
+ if ($r) {
+ $info['author'][] = array('name'=>$m[1], 'link'=>$m[2]);
+ } else {
+ $info['author'][] = array('name'=>$v);
+ }
+ } else {
+ if (array_key_exists($k,$info)){
+ $info[$k]=$v;
+ }
+ }
+
+ }
+ }
+
+ }
+ return $info;
+}}
+
+
+/*
+ * parse theme comment in search of theme infos.
+ * like
+ *
+ * * Name: My Theme
+ * * Description: My Cool Theme
+ * * Version: 1.2.3
+ * * Author: John <profile url>
+ * * Maintainer: Jane <profile url>
+ * *
+ */
+
+if (! function_exists('get_theme_info')){
+function get_theme_info($theme){
$info=Array(
- 'name' => $plugin,
+ 'name' => $theme,
'description' => "",
'author' => array(),
- 'version' => ""
+ 'maintainer' => array(),
+ 'version' => "",
+ 'experimental' => false,
+ 'unsupported' => false
);
+
+ if(file_exists("view/theme/$theme/experimental"))
+ $info['experimental'] = true;
+ if(file_exists("view/theme/$theme/unsupported"))
+ $info['unsupported'] = true;
+
+ if (!is_file("view/theme/$theme/theme.php")) return $info;
+
+ $f = file_get_contents("view/theme/$theme/theme.php");
+ $r = preg_match("|/\*.*\*/|msU", $f, $m);
+
if ($r){
$ll = explode("\n", $m[0]);
@@ -192,6 +255,14 @@ function get_plugin_info($plugin){
} else {
$info['author'][] = array('name'=>$v);
}
+ }
+ elseif ($k=="maintainer"){
+ $r=preg_match("|([^<]+)<([^>]+)>|", $v, $m);
+ if ($r) {
+ $info['maintainer'][] = array('name'=>$m[1], 'link'=>$m[2]);
+ } else {
+ $info['maintainer'][] = array('name'=>$v);
+ }
} else {
if (array_key_exists($k,$info)){
$info[$k]=$v;
diff --git a/include/poller.php b/include/poller.php
index 3e7a1e9b4..cfbc46b87 100755
--- a/include/poller.php
+++ b/include/poller.php
@@ -1,6 +1,7 @@
<?php
require_once("boot.php");
+require_once("include/quoteconvert.php");
function poller_run($argv, $argc){
@@ -419,13 +420,13 @@ function poller_run($argv, $argc){
// look for a 'references' header and try and match with a parent item we have locally.
$raw_refs = ((x($headers,'references')) ? str_replace("\t",'',$headers['references']) : '');
- $datarray['uri'] = trim($meta->message_id,'<>');
+ $datarray['uri'] = msgid2iri(trim($meta->message_id,'<>'));
if($raw_refs) {
$refs_arr = explode(' ', $raw_refs);
if(count($refs_arr)) {
for($x = 0; $x < count($refs_arr); $x ++)
- $refs_arr[$x] = "'" . str_replace(array('<','>',' '),array('','',''),dbesc($refs_arr[$x])) . "'";
+ $refs_arr[$x] = "'" . msgid2iri(str_replace(array('<','>',' '),array('','',''),dbesc($refs_arr[$x]))) . "'";
}
$qstr = implode(',',$refs_arr);
$r = q("SELECT `uri` , `parent-uri` FROM `item` WHERE `uri` IN ( $qstr ) AND `uid` = %d LIMIT 1",
@@ -453,9 +454,39 @@ function poller_run($argv, $argc){
intval($r[0]['id'])
);
}
+ switch ($mailconf[0]['action']) {
+ case 0:
+ break;
+ case 1:
+ logger("Mail: Deleting ".$msg_uid);
+ imap_delete($mbox, $msg_uid, FT_UID);
+ break;
+ case 2:
+ logger("Mail: Mark as seen ".$msg_uid);
+ imap_setflag_full($mbox, $msg_uid, "\\Seen", ST_UID);
+ break;
+ case 3:
+ logger("Mail: Moving ".$msg_uid." to ".$mailconf[0]['movetofolder']);
+ imap_setflag_full($mbox, $msg_uid, "\\Seen", ST_UID);
+ if ($mailconf[0]['movetofolder'] != "")
+ imap_mail_move($mbox, $msg_uid, $mailconf[0]['movetofolder'], FT_UID);
+ break;
+ }
continue;
}
- $datarray['title'] = notags(trim($meta->subject));
+
+ // Decoding the header
+ $subject = imap_mime_header_decode($meta->subject);
+ $datarray['title'] = "";
+ foreach($subject as $subpart)
+ if ($subpart->charset != "default")
+ $datarray['title'] .= iconv($subpart->charset, 'UTF-8//IGNORE', $subpart->text);
+ else
+ $datarray['title'] .= $subpart->text;
+
+ $datarray['title'] = notags(trim($datarray['title']));
+
+ //$datarray['title'] = notags(trim($meta->subject));
$datarray['created'] = datetime_convert('UTC','UTC',$meta->date);
$r = email_get_msg($mbox,$msg_uid);
@@ -463,15 +494,24 @@ function poller_run($argv, $argc){
logger("Mail: can't fetch msg ".$msg_uid);
continue;
}
- $datarray['body'] = escape_tags($r['body']);
+ $datarray['body'] = escape_tags(convertquote($r['body'], false));
logger("Mail: Importing ".$msg_uid);
// some mailing lists have the original author as 'from' - add this sender info to msg body.
// todo: adding a gravatar for the original author would be cool
- if(! stristr($meta->from,$contact['addr']))
- $datarray['body'] = t('From: ') . escape_tags($meta->from) . "\n\n" . $datarray['body'];
+ if(! stristr($meta->from,$contact['addr'])) {
+ $from = imap_mime_header_decode($meta->from);
+ $fromdecoded = "";
+ foreach($from as $frompart)
+ if ($frompart->charset != "default")
+ $fromdecoded .= iconv($frompart->charset, 'UTF-8//IGNORE', $frompart->text);
+ else
+ $fromdecoded .= $frompart->text;
+
+ $datarray['body'] = "[b]".t('From: ') . escape_tags($fromdecoded) . "[/b]\n\n" . $datarray['body'];
+ }
$datarray['uid'] = $importer_uid;
$datarray['contact-id'] = $contact['id'];
@@ -493,6 +533,24 @@ function poller_run($argv, $argc){
q("UPDATE `item` SET `last-child` = 1 WHERE `id` = %d LIMIT 1",
intval($stored_item)
);
+ switch ($mailconf[0]['action']) {
+ case 0:
+ break;
+ case 1:
+ logger("Mail: Deleting ".$msg_uid);
+ imap_delete($mbox, $msg_uid, FT_UID);
+ break;
+ case 2:
+ logger("Mail: Mark as seen ".$msg_uid);
+ imap_setflag_full($mbox, $msg_uid, "\\Seen", ST_UID);
+ break;
+ case 3:
+ logger("Mail: Moving ".$msg_uid." to ".$mailconf[0]['movetofolder']);
+ imap_setflag_full($mbox, $msg_uid, "\\Seen", ST_UID);
+ if ($mailconf[0]['movetofolder'] != "")
+ imap_mail_move($mbox, $msg_uid, $mailconf[0]['movetofolder'], FT_UID);
+ break;
+ }
}
}
@@ -501,7 +559,7 @@ function poller_run($argv, $argc){
}
elseif($contact['network'] === NETWORK_FACEBOOK) {
// This is picked up by the Facebook plugin on a cron hook.
- // Ignored here.
+ // Ignored here.
}
if($xml) {
diff --git a/include/quoteconvert.php b/include/quoteconvert.php
new file mode 100644
index 000000000..3aee93234
--- /dev/null
+++ b/include/quoteconvert.php
@@ -0,0 +1,132 @@
+<?php
+function convertquote($body, $reply)
+{
+ // Convert Quotes
+ $arrbody = explode("\n", trim($body));
+ $arrlevel = array();
+
+ for ($i = 0; $i < count($arrbody); $i++) {
+ $quotelevel = 0;
+ $quoteline = $arrbody[$i];
+
+ while ((strlen($quoteline)>0) and ((substr($quoteline, 0, 1) == '>')
+ or (substr($quoteline, 0, 1) == ' '))) {
+ if (substr($quoteline, 0, 1) == '>')
+ $quotelevel++;
+
+ $quoteline = ltrim(substr($quoteline, 1));
+ }
+
+ //echo $quotelevel.'*'.$quoteline."\r\n";
+
+ $arrlevel[$i] = $quotelevel;
+ $arrbody[$i] = $quoteline;
+ }
+
+ $quotelevel = 0;
+ $previousquote = 0;
+ $arrbodyquoted = array();
+
+ for ($i = 0; $i < count($arrbody); $i++) {
+
+ $previousquote = $quotelevel;
+ $quotelevel = $arrlevel[$i];
+ $currline = $arrbody[$i];
+
+ while ($previousquote < $quotelevel) {
+ if ($sender != '') {
+ $quote = "[quote title=$sender]";
+ $sender = '';
+ } else
+ $quote = "[quote]";
+
+ $arrbody[$i] = $quote.$arrbody[$i];
+ $previousquote++;
+ }
+
+ while ($previousquote > $quotelevel) {
+ $arrbody[$i] = '[/quote]'.$arrbody[$i];
+ $previousquote--;
+ }
+
+ $arrbodyquoted[] = $arrbody[$i];
+ }
+ while ($quotelevel > 0) {
+ $arrbodyquoted[] = '[/quote]';
+ $quotelevel--;
+ }
+
+ $body = implode("\n", $arrbodyquoted);
+
+ if (strlen($body) > 0)
+ $body = $body."\n\n";
+
+ if ($reply)
+ $body = removetofu($body);
+
+ return($body);
+}
+
+function removetofu($message)
+{
+ $message = trim($message);
+
+ do {
+ $oldmessage = $message;
+ $message = preg_replace('=\[/quote\][\s](.*?)\[quote\]=i', '$1', $message);
+ $message = str_replace("[/quote][quote]", "", $message);
+ } while ($message != $oldmessage);
+
+ $quotes = array();
+
+ $startquotes = 0;
+
+ $start = 0;
+
+ while(($pos = strpos($message, '[quote', $start)) > 0) {
+ $quotes[$pos] = -1;
+ $start = $pos + 7;
+ $startquotes++;
+ }
+
+ $endquotes = 0;
+ $start = 0;
+
+ while(($pos = strpos($message, '[/quote]', $start)) > 0) {
+ $start = $pos + 7;
+ $endquotes++;
+ }
+
+ while ($endquotes < $startquotes) {
+ $message .= '[/quote]';
+ ++$endquotes;
+ }
+
+ $start = 0;
+
+ while(($pos = strpos($message, '[/quote]', $start)) > 0) {
+ $quotes[$pos] = 1;
+ $start = $pos + 7;
+ }
+
+ if (strtolower(substr($message, -8)) != '[/quote]')
+ return($message);
+
+ krsort($quotes);
+
+ $quotelevel = 0;
+ $quotestart = 0;
+ foreach ($quotes as $index => $quote) {
+ $quotelevel += $quote;
+
+ if (($quotelevel == 0) and ($quotestart == 0))
+ $quotestart = $index;
+ }
+
+ if ($quotestart != 0) {
+ $message = trim(substr($message, 0, $quotestart))."\n[collapsed]\n".substr($message, $quotestart+7, -8).'[/collapsed]';
+ }
+
+ return($message);
+}
+?>
diff --git a/include/template_processor.php b/include/template_processor.php
index 0d476f0e6..28c3f07dd 100755
--- a/include/template_processor.php
+++ b/include/template_processor.php
@@ -32,11 +32,12 @@
if(is_array($r) && count($r)) {
foreach ($r as $k => $v ) {
- if (is_array($v))
+ if (is_array($v)) {
$this->_build_replace($v, "$prefix$k.");
-
- $this->search[] = $prefix . $k;
- $this->replace[] = $v;
+ } else {
+ $this->search[] = $prefix . $k;
+ $this->replace[] = $v;
+ }
}
}
}
@@ -53,7 +54,7 @@
$keys = array_map('trim',explode(".",$name));
$val = $this->r;
foreach($keys as $k) {
- $val = $val[$k];
+ $val = (isset($val[$k]) ? $val[$k] : null);
}
return $val;
}
@@ -79,8 +80,8 @@
} else {
$val = $this->_get_var($args[2]);
}
- list($strue, $sfalse)= preg_split("|{{ *else *}}|", $args[3]);
- return ($val?$strue:$sfalse);
+ $x = preg_split("|{{ *else *}}|", $args[3]);
+ return ( $val ? $x[0] : (isset($x[1]) ? $x[1] : ""));
}
/**
@@ -159,7 +160,8 @@
krsort($this->nodes);
return $s;
}
-
+
+ /*
private function _str_replace($str){
#$this->search,$this->replace,
$searchs = $this->search;
@@ -182,7 +184,7 @@
}
return str_replace($this->search,$this->replace, $str);
- }
+ }*/
public function replace($s, $r) {
@@ -204,7 +206,8 @@
$os = ""; $count=0;
while($os!=$s && $count<10){
$os=$s; $count++;
- $s = $this->_str_replace($s);
+ //$s = $this->_str_replace($s);
+ $s = str_replace($this->search, $this->replace, $s);
}
return template_unescape($s);
}
diff --git a/include/text.php b/include/text.php
index 0f7d2f731..1f5d4a3e1 100755
--- a/include/text.php
+++ b/include/text.php
@@ -996,7 +996,7 @@ function lang_selector() {
}
$ll = substr($l,5);
$ll = substr($ll,0,strrpos($ll,'/'));
- $selected = (($ll === $lang && (x($_SESSION['language']))) ? ' selected="selected" ' : '');
+ $selected = (($ll === $lang && (x($_SESSION, 'language'))) ? ' selected="selected" ' : '');
$o .= '<option value="' . $ll . '"' . $selected . '>' . $ll . '</option>';
}
}
diff --git a/js/main.js b/js/main.js
index 3a10ae468..a5d1214cb 100755
--- a/js/main.js
+++ b/js/main.js
@@ -114,7 +114,7 @@
var eNotif = $(data).find('notif')
notif = eNotif.attr('count');
- if (notif>0){
+ if (notif>=0){
$("#nav-notifications-linkmenu").addClass("on");
nnm = $("#nav-notifications-menu");
@@ -124,13 +124,13 @@
eNotif.children("note").each(function(){
e = $(this);
text = e.text().format("<span class='contactname'>"+e.attr('name')+"</span>");
- html = notifications_tpl.format(e.attr('href'),e.attr('photo'), text, e.attr('date'));
+ html = notifications_tpl.format(e.attr('href'),e.attr('photo'), text, e.attr('date'), e.attr('seen'));
nnm.append(html);
});
} else {
- $("#nav-notifications-linkmenu").removeClass("on");
- $("#nav-notifications-menu").html(notifications_empty);
+ // $("#nav-notifications-linkmenu").removeClass("on");
+ // $("#nav-notifications-menu").html(notifications_empty);
}
if(notif == 0) { notif = ''; $('#notify-update').removeClass('show') } else { $('#notify-update').addClass('show') }
$('#notify-update').html(notif);
diff --git a/library/spam/b8/storage/storage_frndc.php b/library/spam/b8/storage/storage_frndc.php
index 2b9374f67..7702c108b 100644
--- a/library/spam/b8/storage/storage_frndc.php
+++ b/library/spam/b8/storage/storage_frndc.php
@@ -147,58 +147,8 @@ class b8_storage_frndc extends b8_storage_base
public function connect()
{
- return TRUE;
-
- # Are we already connected?
- if($this->connected === TRUE)
- return TRUE;
-
- # Are we using an existing passed resource?
- if($this->config['connection'] === FALSE) {
- # ... yes we are, but the connection is not a resource, so return an error
- $this->connected = FALSE;
- return self::DATABASE_CONNECTION_BAD_RESOURCE;
- }
-
- elseif($this->config['connection'] === NULL) {
-
- # ... no we aren't so we have to connect.
-
- if($this->_connection = mysql_connect($this->config['host'], $this->config['user'], $this->config['pass'])) {
- if(mysql_select_db($this->config['database'], $this->_connection) === FALSE) {
- $this->connected = FALSE;
- return self::DATABASE_SELECT_ERROR . ": " . mysql_error();
- }
- }
- else {
- $this->connected = FALSE;
- return self::DATABASE_CONNECTION_ERROR;
- }
-
- }
-
- else {
- # ... yes we are
- $this->_connection = $this->config['connection'];
- }
-
- # Just in case ...
- if($this->_connection === NULL) {
- $this->connected = FALSE;
- return self::DATABASE_CONNECTION_FAIL;
- }
-
- # Check to see if the wordlist table exists
- if(mysql_query('DESCRIBE ' . $this->config['table_name'], $this->_connection) === FALSE) {
- $this->connected = FALSE;
- return self::DATABASE_TABLE_ACCESS_FAIL . ": " . mysql_error();
- }
-
- # Everything is okay and connected
$this->connected = TRUE;
-
- # Let's see if this is a b8 database and the version is okay
- return $this->check_database();
+ return TRUE;
}
@@ -235,7 +185,7 @@ class b8_storage_frndc extends b8_storage_base
# ... and fetch the data
$result = q('
- SELECT token, count
+ SELECT *
FROM ' . $this->config['table_name'] . '
WHERE ' . $where . ' AND uid = ' . $uid );
@@ -256,7 +206,7 @@ class b8_storage_frndc extends b8_storage_base
$token = dbesc($token);
$count = dbesc($count);
$uid = dbesc($uid);
- array_push($this->_puts, '("' . $token . '", "' . $count . '", '"' . $uid .'")');
+ array_push($this->_puts, '("' . $token . '", "' . $count . '", "' . $uid .'")');
}
/**
@@ -273,7 +223,7 @@ class b8_storage_frndc extends b8_storage_base
$token = dbesc($token);
$count = dbesc($count);
$uid = dbesc($uid);
- array_push($this->_puts, '("' . $token . '", "' . $count . '", '"' . $uid .'")');
+ array_push($this->_puts, '("' . $token . '", "' . $count . '", "' . $uid .'")');
}
/**
@@ -325,7 +275,7 @@ class b8_storage_frndc extends b8_storage_base
if(count($this->_updates) > 0) {
// this still needs work
- $result = q("select * from " . $this->config['table_name'] . ' where token = ';
+ $result = q("select * from " . $this->config['table_name'] . ' where token = ');
$result = q('
diff --git a/library/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js b/library/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js
index e5f716b29..44d1473a9 100755
--- a/library/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js
+++ b/library/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js
@@ -44,9 +44,35 @@
_dfrn_html2bbcode : function(s) {
s = tinymce.trim(s);
- function rep(re, str) {
- s = s.replace(re, str);
- };
+ function rep(re, str) {
+
+ //modify code to keep stuff intact within [code][/code] blocks
+ //Waitman Gobble NO WARRANTY
+
+
+ var o = new Array();
+ var x = s.split("[code]");
+ var i = 0;
+
+ var si = "";
+ si = x.shift();
+ si = si.replace(re,str);
+ o.push(si);
+
+ for (i = 0; i < x.length; i++) {
+ var no = new Array();
+ var j = x.shift();
+ var g = j.split("[/code]");
+ no.push(g.shift());
+ si = g.shift();
+ si = si.replace(re,str);
+ no.push(si);
+ o.push(no.join("[/code]"));
+ }
+
+ s = o.join("[code]");
+
+ };
@@ -123,11 +149,42 @@
// BBCode -> HTML from DFRN dialect
_dfrn_bbcode2html : function(s) {
s = tinymce.trim(s);
-
- function rep(re, str) {
- s = s.replace(re, str);
- };
-
+
+
+ function rep(re, str) {
+
+ //modify code to keep stuff intact within [code][/code] blocks
+ //Waitman Gobble NO WARRANTY
+
+
+ var o = new Array();
+ var x = s.split("[code]");
+ var i = 0;
+
+ var si = "";
+ si = x.shift();
+ si = si.replace(re,str);
+ o.push(si);
+
+ for (i = 0; i < x.length; i++) {
+ var no = new Array();
+ var j = x.shift();
+ var g = j.split("[/code]");
+ no.push(g.shift());
+ si = g.shift();
+ si = si.replace(re,str);
+ no.push(si);
+ o.push(no.join("[/code]"));
+ }
+
+ s = o.join("[code]");
+
+ };
+
+
+
+
+
// example: [b] to <strong>
rep(/\n/gi,"<br />");
rep(/\[b\]/gi,"<strong>");
diff --git a/mod/acl.php b/mod/acl.php
index 98ca90ded..375c618c8 100755
--- a/mod/acl.php
+++ b/mod/acl.php
@@ -16,6 +16,8 @@ function acl_init(&$a){
if ($search!=""){
$sql_extra = "AND `name` LIKE '%%".dbesc($search)."%%'";
$sql_extra2 = "AND (`attag` LIKE '%%".dbesc($search)."%%' OR `name` LIKE '%%".dbesc($search)."%%' OR `nick` LIKE '%%".dbesc($search)."%%')";
+ } else {
+ $sql_extra = $sql_extra2 = "";
}
// count groups and contacts
@@ -75,7 +77,7 @@ function acl_init(&$a){
if ($type=='' || $type=='c'){
- $r = q("SELECT `id`, `name`, `nick`, `micro`, `network`, `url` FROM `contact`
+ $r = q("SELECT `id`, `name`, `nick`, `micro`, `network`, `url`, `attag` FROM `contact`
WHERE `uid` = %d AND `self` = 0 AND `blocked` = 0 AND `pending` = 0 AND `notify` != ''
$sql_extra2
ORDER BY `name` ASC ",
diff --git a/mod/admin.php b/mod/admin.php
index 028ed8624..0f600e312 100755
--- a/mod/admin.php
+++ b/mod/admin.php
@@ -6,14 +6,19 @@
require_once("include/remoteupdate.php");
function admin_post(&$a){
+
+
if(!is_site_admin()) {
return;
}
+ // do not allow a page manager to access the admin panel at all.
if(x($_SESSION,'submanage') && intval($_SESSION['submanage']))
return;
+
+
// urls
if ($a->argc > 1){
switch ($a->argv[1]){
@@ -66,6 +71,7 @@ function admin_content(&$a) {
'site' => Array($a->get_baseurl()."/admin/site/", t("Site") , "site"),
'users' => Array($a->get_baseurl()."/admin/users/", t("Users") , "users"),
'plugins'=> Array($a->get_baseurl()."/admin/plugins/", t("Plugins") , "plugins"),
+ 'themes' => Array($a->get_baseurl()."/admin/themes/", t("Themes") , "themes"),
'update' => Array($a->get_baseurl()."/admin/update/", t("Update") , "update")
);
@@ -108,6 +114,9 @@ function admin_content(&$a) {
case 'plugins':
$o = admin_page_plugins($a);
break;
+ case 'themes':
+ $o = admin_page_themes($a);
+ break;
case 'logs':
$o = admin_page_logs($a);
break;
@@ -564,7 +573,7 @@ function admin_page_plugins(&$a){
'$info' => get_plugin_info($plugin),
'$admin_form' => $admin_form,
-
+ '$function' => 'plugins',
'$readme' => $readme
));
}
@@ -593,11 +602,179 @@ function admin_page_plugins(&$a){
'$page' => t('Plugins'),
'$submit' => t('Submit'),
'$baseurl' => $a->get_baseurl(),
-
+ '$function' => 'plugins',
'$plugins' => $plugins
));
}
+function toggle_theme(&$themes,$th,&$result) {
+ for($x = 0; $x < count($themes); $x ++) {
+ if($themes[$x]['name'] === $th) {
+ if($themes[$x]['allowed']) {
+ $themes[$x]['allowed'] = 0;
+ $result = 0;
+ }
+ else {
+ $themes[$x]['allowed'] = 1;
+ $result = 1;
+ }
+ }
+ }
+}
+
+function theme_status($themes,$th) {
+ for($x = 0; $x < count($themes); $x ++) {
+ if($themes[$x]['name'] === $th) {
+ if($themes[$x]['allowed']) {
+ return 1;
+ }
+ else {
+ return 0;
+ }
+ }
+ }
+ return 0;
+}
+
+
+
+function rebuild_theme_table($themes) {
+ $o = '';
+ if(count($themes)) {
+ foreach($themes as $th) {
+ if($th['allowed']) {
+ if(strlen($o))
+ $o .= ',';
+ $o .= $th['name'];
+ }
+ }
+ }
+ return $o;
+}
+
+
+/*
+ * Themes admin page
+ */
+
+function admin_page_themes(&$a){
+
+ $allowed_themes_str = get_config('system','allowed_themes');
+ $allowed_themes_raw = explode(',',$allowed_themes_str);
+ $allowed_themes = array();
+ if(count($allowed_themes_raw))
+ foreach($allowed_themes_raw as $x)
+ if(strlen(trim($x)))
+ $allowed_themes[] = trim($x);
+
+ $themes = array();
+ $files = glob('view/theme/*');
+ if($files) {
+ foreach($files as $file) {
+ $f = basename($file);
+ $is_experimental = intval(file_exists($file . '/experimental'));
+ $is_unsupported = 1-(intval(file_exists($file . '/unsupported')));
+ $is_allowed = intval(in_array($f,$allowed_themes));
+ $themes[] = array('name' => $f, 'experimental' => $is_experimental, 'supported' => $is_supported, 'allowed' => $is_allowed);
+ }
+ }
+
+ if(! count($themes)) {
+ notice( t('No themes found.'));
+ return;
+ }
+
+ /**
+ * Single theme
+ */
+
+ if ($a->argc == 3){
+ $theme = $a->argv[2];
+ if(! is_dir("view/theme/$theme")){
+ notice( t("Item not found.") );
+ return;
+ }
+
+ if (x($_GET,"a") && $_GET['a']=="t"){
+
+ // Toggle theme status
+
+ toggle_theme($themes,$theme,$result);
+ $s = rebuild_theme_table($themes);
+ if($result)
+ info( sprintf('Theme %s enabled.',$theme));
+ else
+ info( sprintf('Theme %s disabled.',$theme));
+
+ set_config('system','allowed_themes',$s);
+ goaway($a->get_baseurl() . '/admin/themes' );
+ return; // NOTREACHED
+ }
+
+ // display theme details
+ require_once('library/markdown.php');
+
+ if (theme_status($themes,$theme)) {
+ $status="on"; $action= t("Disable");
+ } else {
+ $status="off"; $action= t("Enable");
+ }
+
+ $readme=Null;
+ if (is_file("view/$theme/README.md")){
+ $readme = file_get_contents("view/$theme/README.md");
+ $readme = Markdown($readme);
+ } else if (is_file("view/$theme/README")){
+ $readme = "<pre>". file_get_contents("view/$theme/README") ."</pre>";
+ }
+
+ $admin_form="";
+
+ $t = get_markup_template("admin_plugins_details.tpl");
+ return replace_macros($t, array(
+ '$title' => t('Administration'),
+ '$page' => t('Themes'),
+ '$toggle' => t('Toggle'),
+ '$settings' => t('Settings'),
+ '$baseurl' => $a->get_baseurl(),
+
+ '$plugin' => $theme,
+ '$status' => $status,
+ '$action' => $action,
+ '$info' => get_theme_info($theme),
+ '$function' => 'themes',
+ '$admin_form' => $admin_form,
+
+ '$readme' => $readme
+ ));
+ }
+
+
+
+ /**
+ * List plugins
+ */
+
+ $xthemes = array();
+ if($themes) {
+ foreach($themes as $th) {
+ $xthemes[] = array($th['name'],(($th['allowed']) ? "on" : "off"), get_theme_info($th['name']));
+ }
+ }
+
+ $t = get_markup_template("admin_plugins.tpl");
+ return replace_macros($t, array(
+ '$title' => t('Administration'),
+ '$page' => t('Themes'),
+ '$submit' => t('Submit'),
+ '$baseurl' => $a->get_baseurl(),
+ '$function' => 'themes',
+ '$plugins' => $xthemes,
+ '$experimental' => t('[Experimental]'),
+ '$unsupported' => t('[Unsupported]')
+ ));
+}
+
/**
* Logs admin page
diff --git a/mod/contacts.php b/mod/contacts.php
index c8edea151..c99ac1452 100755
--- a/mod/contacts.php
+++ b/mod/contacts.php
@@ -504,8 +504,9 @@ function contacts_content(&$a) {
'name' => $rr['name'],
'username' => $rr['name'],
'sparkle' => $sparkle,
+ 'itemurl' => $rr['url'],
'url' => $url,
- 'item' => $rr,
+ 'network' => network_to_name($rr['network']),
);
}
diff --git a/mod/dfrn_confirm.php b/mod/dfrn_confirm.php
index 5a24f0089..0bc3ea7df 100644
--- a/mod/dfrn_confirm.php
+++ b/mod/dfrn_confirm.php
@@ -107,7 +107,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
*
*/
- $r = q("SELECT * FROM `contact` WHERE ( ( `issued-id` != '' AND `issued-id` = '%s' ) OR ( `id` = %d AND `id` != 0 ) ) AND `uid` = %d LIMIT 1",
+ $r = q("SELECT * FROM `contact` WHERE ( ( `issued-id` != '' AND `issued-id` = '%s' ) OR ( `id` = %d AND `id` != 0 ) ) AND `uid` = %d AND `duplex` = 0 LIMIT 1",
dbesc($dfrn_id),
intval($cid),
intval($uid)
@@ -116,6 +116,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
if(! count($r)) {
logger('dfrn_confirm: Contact not found in DB.');
notice( t('Contact not found.') . EOL );
+ notice( t('This may occasionally happen if contact was requested by both persons and it has already been approved.') . EOL );
return;
}
@@ -631,6 +632,15 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
xml_status(3,$message);
}
+ // It's possible that the other person also requested friendship.
+ // If it is a duplex relationship, ditch the issued-id if one exists.
+
+ if($duplex) {
+ $r = q("UPDATE `contact` SET `issued-id` = '' WHERE `id` = %d LIMIT 1",
+ intval($dfrn_record)
+ );
+ }
+
// We're good but now we have to scrape the profile photo and send notifications.
diff --git a/mod/display.php b/mod/display.php
index d96be4333..f510f793d 100755
--- a/mod/display.php
+++ b/mod/display.php
@@ -74,11 +74,11 @@ function display_content(&$a) {
$x = array(
'is_owner' => true,
'allow_location' => $a->user['allow_location'],
- 'default_location' => $a->user['default_location'],
+ 'default_location' => $a->user['default-location'],
'nickname' => $a->user['nickname'],
- 'lockstate' => ((($group) || (is_array($a->user) && ((strlen($a->user['allow_cid'])) || (strlen($a->user['allow_gid'])) || (strlen($a->user['deny_cid'])) || (strlen($a->user['deny_gid']))))) ? 'lock' : 'unlock'),
- 'acl' => populate_acl((($group || $cid) ? $def_acl : $a->user), $celeb),
- 'bang' => (($group || $cid) ? '!' : ''),
+ 'lockstate' => ( (is_array($a->user)) && ((strlen($a->user['allow_cid'])) || (strlen($a->user['allow_gid'])) || (strlen($a->user['deny_cid'])) || (strlen($a->user['deny_gid']))) ? 'lock' : 'unlock'),
+ 'acl' => populate_acl($a->user, $celeb),
+ 'bang' => '',
'visitor' => 'block',
'profile_uid' => local_user()
);
diff --git a/mod/follow.php b/mod/follow.php
index f8964885e..ae8cb200c 100755
--- a/mod/follow.php
+++ b/mod/follow.php
@@ -49,6 +49,11 @@ function follow_init(&$a) {
goaway($_SESSION['return_url']);
}
}
+
+ // This just confuses things, remove it
+ if($ret['network'] === NETWORK_DIASPORA)
+ $ret['url'] = str_replace('?absolute=true','',$ret['url']);
+
// do we have enough information?
diff --git a/mod/item.php b/mod/item.php
index 3035989f3..81d7c753b 100755
--- a/mod/item.php
+++ b/mod/item.php
@@ -400,6 +400,8 @@ function item_post(&$a) {
$body = preg_replace('/\[\/code\]\s*\[code\]/ism',"\n",$body);
+ $body = scale_external_images($body,false);
+
/**
* Look for any tags and linkify them
*/
@@ -753,7 +755,8 @@ function item_post(&$a) {
'source_link' => $datarray['author-link'],
'source_photo' => $datarray['author-avatar'],
'verb' => ACTIVITY_POST,
- 'otype' => 'item'
+ 'otype' => 'item',
+ 'parent' => $parent,
));
}
diff --git a/mod/network.php b/mod/network.php
index 03a671b61..894ac48ed 100755
--- a/mod/network.php
+++ b/mod/network.php
@@ -263,7 +263,7 @@ function network_content(&$a, $update = 0) {
$x = array(
'is_owner' => true,
'allow_location' => $a->user['allow_location'],
- 'default_location' => $a->user['default_location'],
+ 'default_location' => $a->user['default-location'],
'nickname' => $a->user['nickname'],
'lockstate' => ((($group) || (is_array($a->user) && ((strlen($a->user['allow_cid'])) || (strlen($a->user['allow_gid'])) || (strlen($a->user['deny_cid'])) || (strlen($a->user['deny_gid']))))) ? 'lock' : 'unlock'),
'acl' => populate_acl((($group || $cid) ? $def_acl : $a->user), $celeb),
diff --git a/mod/notifications.php b/mod/notifications.php
index 5831c1b7a..99031a1d5 100755
--- a/mod/notifications.php
+++ b/mod/notifications.php
@@ -295,7 +295,7 @@ function notifications_content(&$a) {
}
$o .= replace_macros($notif_tpl,array(
- '$notif_header' => t('Notifications'),
+ '$notif_header' => t('Network Notifications'),
'$tabs' => $tabs,
'$notif_content' => $notif_content,
));
@@ -325,7 +325,7 @@ function notifications_content(&$a) {
}
$o .= replace_macros($notif_tpl,array(
- '$notif_header' => t('System'),
+ '$notif_header' => t('System Notifications'),
'$tabs' => $tabs,
'$notif_content' => $notif_content,
));
@@ -420,7 +420,7 @@ function notifications_content(&$a) {
}
$o .= replace_macros($notif_tpl,array(
- '$notif_header' => t('Notifications'),
+ '$notif_header' => t('Personal Notifications'),
'$tabs' => $tabs,
'$notif_content' => $notif_content,
));
@@ -501,7 +501,7 @@ function notifications_content(&$a) {
}
$o .= replace_macros($notif_tpl,array(
- '$notif_header' => t('Notifications'),
+ '$notif_header' => t('Home Notifications'),
'$tabs' => $tabs,
'$notif_content' => $notif_content,
));
diff --git a/mod/notify.php b/mod/notify.php
index 229020f4a..e6a7a8859 100644
--- a/mod/notify.php
+++ b/mod/notify.php
@@ -36,4 +36,36 @@ function notify_init(&$a) {
function notify_content(&$a) {
if(! local_user())
return login();
+
+ $notif_tpl = get_markup_template('notifications.tpl');
+
+ $not_tpl = get_markup_template('notify.tpl');
+ require_once('include/bbcode.php');
+
+ $r = q("SELECT * from notify where uid = %d and seen = 0 order by date desc",
+ intval(local_user())
+ );
+
+ if (count($r) > 0) {
+ foreach ($r as $it) {
+ $notif_content .= replace_macros($not_tpl,array(
+ '$item_link' => $a->get_baseurl().'/notify/view/'. $it['id'],
+ '$item_image' => $it['photo'],
+ '$item_text' => strip_tags(bbcode($it['msg'])),
+ '$item_when' => relative_date($it['date'])
+ ));
+ }
+ } else {
+ $notif_content .= t('No more system notifications.');
+ }
+
+ $o .= replace_macros($notif_tpl,array(
+ '$notif_header' => t('System Notifications'),
+ '$tabs' => '', // $tabs,
+ '$notif_content' => $notif_content,
+ ));
+
+ return $o;
+
+
} \ No newline at end of file
diff --git a/mod/photo.php b/mod/photo.php
index a5a5a1dc1..c4a93769a 100755
--- a/mod/photo.php
+++ b/mod/photo.php
@@ -119,7 +119,7 @@ function photo_init(&$a) {
// NOTREACHED
}
- if(intval($customres) && $customres > 0 && $customres < 500) {
+ if(isset($customres) && $customres > 0 && $customres < 500) {
require_once('include/Photo.php');
$ph = new Photo($data);
if($ph->is_valid()) {
diff --git a/mod/ping.php b/mod/ping.php
index 2898042a3..7380ff7d0 100644
--- a/mod/ping.php
+++ b/mod/ping.php
@@ -12,92 +12,70 @@ function ping_init(&$a) {
$xmlhead="<"."?xml version='1.0' encoding='UTF-8' ?".">";
if(local_user()){
- $z = q("select * from notify where seen = 0 and uid = %d
- order by date desc",
+ $firehose = intval(get_pconfig(local_user(),'system','notify_full'));
+
+ $z = q("select * from notify where uid = %d
+ order by seen asc, date desc limit 0, 50",
intval(local_user())
);
-
$tags = array();
$comments = array();
$likes = array();
$dislikes = array();
$friends = array();
$posts = array();
-
+ $home = 0;
+ $network = 0;
- $r = q("SELECT `item`.`id`,`item`.`parent`, `item`.`verb`, `item`.`author-name`,
+ $r = q("SELECT `item`.`id`,`item`.`parent`, `item`.`verb`, `item`.`wall`, `item`.`author-name`,
`item`.`author-link`, `item`.`author-avatar`, `item`.`created`, `item`.`object`,
`pitem`.`author-name` as `pname`, `pitem`.`author-link` as `plink`
FROM `item` INNER JOIN `item` as `pitem` ON `pitem`.`id`=`item`.`parent`
WHERE `item`.`unseen` = 1 AND `item`.`visible` = 1 AND
- `item`.`deleted` = 0 AND `item`.`uid` = %d AND `item`.`wall` = 0
+ `item`.`deleted` = 0 AND `item`.`uid` = %d
ORDER BY `item`.`created` DESC",
intval(local_user())
);
-
- $network = count($r);
- foreach ($r as $it) {
- switch($it['verb']){
- case ACTIVITY_TAG:
- $obj = parse_xml_string($xmlhead.$it['object']);
- $it['tname'] = $obj->content;
- $tags[] = $it;
- break;
- case ACTIVITY_LIKE:
- $likes[] = $it;
- break;
- case ACTIVITY_DISLIKE:
- $dislikes[] = $it;
- break;
- case ACTIVITY_FRIEND:
- $obj = parse_xml_string($xmlhead.$it['object']);
- $it['fname'] = $obj->title;
- $friends[] = $it;
- break;
- default:
- if ($it['parent']!=$it['id']) {
- $comments[] = $it;
- } else {
- $posts[] = $it;
- }
- }
- }
- $r = q("SELECT `item`.`id`,`item`.`parent`, `item`.`verb`, `item`.`author-name`,
- `item`.`author-link`, `item`.`author-avatar`, `item`.`created`, `item`.`object`,
- `pitem`.`author-name` as `pname`, `pitem`.`author-link` as `plink`
- FROM `item` INNER JOIN `item` as `pitem` ON `pitem`.`id`=`item`.`parent`
- WHERE `item`.`unseen` = 1 AND `item`.`visible` = 1 AND
- `item`.`deleted` = 0 AND `item`.`uid` = %d AND `item`.`wall` = 1",
- intval(local_user())
- );
- $home = count($r);
- foreach ($r as $it) {
- switch($it['verb']){
- case ACTIVITY_TAG:
- $obj = parse_xml_string($xmlhead.$it['object']);
- $it['tname'] = $obj->content;
- $tags[] = $it;
- break;
- case ACTIVITY_LIKE:
- $likes[] = $it;
- break;
- case ACTIVITY_DISLIKE:
- $dislikes[] = $it;
- break;
- case ACTIVITY_FRIEND:
- $obj = parse_xml_string($xmlhead.$it['object']);
- $it['fname'] = $obj->title;
- $friends[] = $it;
- break;
- default:
- if ($it['parent']!=$it['id']) $comments[] = $it;
+ if(count($r)) {
+
+ foreach ($r as $it) {
+
+ if($it['wall'])
+ $home ++;
+ else
+ $network ++;
+
+ switch($it['verb']){
+ case ACTIVITY_TAG:
+ $obj = parse_xml_string($xmlhead.$it['object']);
+ $it['tname'] = $obj->content;
+ $tags[] = $it;
+ break;
+ case ACTIVITY_LIKE:
+ $likes[] = $it;
+ break;
+ case ACTIVITY_DISLIKE:
+ $dislikes[] = $it;
+ break;
+ case ACTIVITY_FRIEND:
+ $obj = parse_xml_string($xmlhead.$it['object']);
+ $it['fname'] = $obj->title;
+ $friends[] = $it;
+ break;
+ default:
+ if ($it['parent']!=$it['id']) {
+ $comments[] = $it;
+ } else {
+ if(! $it['wall'])
+ $posts[] = $it;
+ }
+ }
}
}
-
$intros1 = q("SELECT `intro`.`id`, `intro`.`datetime`,
`fcontact`.`name`, `fcontact`.`url`, `fcontact`.`photo`
FROM `intro` LEFT JOIN `fcontact` ON `intro`.`fid` = `fcontact`.`id`
@@ -122,24 +100,25 @@ function ping_init(&$a) {
intval(local_user()),
dbesc($myurl)
);
- $mail = $mails[0]['total'];
+ if($mails)
+ $mail = $mails[0]['total'];
if ($a->config['register_policy'] == REGISTER_APPROVE && is_site_admin()){
$regs = q("SELECT `contact`.`name`, `contact`.`url`, `contact`.`micro`, `register`.`created`, COUNT(*) as `total` FROM `contact` RIGHT JOIN `register` ON `register`.`uid`=`contact`.`uid` WHERE `contact`.`self`=1");
- $register = $regs[0]['total'];
+ if($regs)
+ $register = $regs[0]['total'];
} else {
$register = "0";
}
- function xmlize($href, $name, $url, $photo, $date, $message){
- $notsxml = '<note href="%s" name="%s" url="%s" photo="%s" date="%s">%s</note>';
+ function xmlize($href, $name, $url, $photo, $date, $seen, $message){
+ $notsxml = '<note href="%s" name="%s" url="%s" photo="%s" date="%s" seen="%s" >%s</note>';
return sprintf ( $notsxml,
- xmlify($href), xmlify($name), xmlify($url), xmlify($photo), xmlify($date), xmlify($message)
- );
+ xmlify($href), xmlify($name), xmlify($url), xmlify($photo), xmlify($date), xmlify($seen), xmlify($message)
+ );
}
-
echo "<intro>$intro</intro>
<mail>$mail</mail>
<net>$network</net>
@@ -147,95 +126,100 @@ function ping_init(&$a) {
if ($register!=0) echo "<register>$register</register>";
$tot = $mail+$intro+$register+count($comments)+count($likes)+count($dislikes)+count($friends)+count($posts)+count($tags);
-
- echo ' <notif count="'.$tot.'">';
require_once('include/bbcode.php');
-
- if(count($z)) {
- foreach($z as $zz) {
- echo xmlize($a->get_baseurl() . '/notify/' . $zz['id'], $zz['name'],$zz['url'],$zz['photo'],relative_date($zz['date']), bbcode($zz['msg']));
-
+ $sysnotify = 0;
+
+ if($firehose) {
+ echo ' <notif count="'.$tot.'">';
+ }
+ else {
+ if(count($z)) {
+ foreach($z as $zz) {
+ if($zz['seen'] == 0)
+ $sysnotify ++;
+ }
+ }
+
+ echo ' <notif count="'. $sysnotify .'">';
+ if(count($z)) {
+ foreach($z as $zz) {
+ echo xmlize($a->get_baseurl() . '/notify/view/' . $zz['id'], $zz['name'],$zz['url'],$zz['photo'],relative_date($zz['date']), ($zz['seen'] ? 'notify-seen' : 'notify-unseen'), ($zz['seen'] ? '' : '&rarr; ') .strip_tags(bbcode($zz['msg'])));
+ }
}
}
+ if($firehose) {
+ if ($intro>0){
+ foreach ($intros as $i) {
+ echo xmlize( $a->get_baseurl().'/notifications/intros/'.$i['id'], $i['name'], $i['url'], $i['photo'], relative_date($i['datetime']), 'notify-unseen',t("{0} wants to be your friend") );
+ };
+ }
+ if ($mail>0){
+ foreach ($mails as $i) {
+ echo xmlize( $a->get_baseurl().'/message/'.$i['id'], $i['from-name'], $i['from-url'], $i['from-photo'], relative_date($i['created']), 'notify-unseen',t("{0} sent you a message") );
+ };
+ }
+ if ($register>0){
+ foreach ($regs as $i) {
+ echo xmlize( $a->get_baseurl().'/admin/users/', $i['name'], $i['url'], $i['micro'], relative_date($i['created']), 'notify-unseen',t("{0} requested registration") );
+ };
+ }
+ if (count($comments)){
+ foreach ($comments as $i) {
+ echo xmlize( $a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'], $i['author-name'], $i['author-link'], $i['author-avatar'], relative_date($i['created']), 'notify-unseen',sprintf( t("{0} commented %s's post"), $i['pname'] ) );
+ };
+ }
+ if (count($likes)){
+ foreach ($likes as $i) {
+ echo xmlize( $a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'], $i['author-name'], $i['author-link'], $i['author-avatar'], relative_date($i['created']), 'notify-unseen',sprintf( t("{0} liked %s's post"), $i['pname'] ) );
+ };
+ }
+ if (count($dislikes)){
+ foreach ($dislikes as $i) {
+ echo xmlize( $a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'], $i['author-name'], $i['author-link'], $i['author-avatar'], relative_date($i['created']), 'notify-unseen',sprintf( t("{0} disliked %s's post"), $i['pname'] ) );
+ };
+ }
+ if (count($friends)){
+ foreach ($friends as $i) {
+ echo xmlize($a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'],$i['author-name'],$i['author-link'], $i['author-avatar'], relative_date($i['created']), 'notify-unseen',sprintf( t("{0} is now friends with %s"), $i['fname'] ) );
+ };
+ }
+ if (count($posts)){
+ foreach ($posts as $i) {
+ echo xmlize( $a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'], $i['author-name'], $i['author-link'], $i['author-avatar'], relative_date($i['created']), 'notify-unseen',sprintf( t("{0} posted") ) );
+ };
+ }
+ if (count($tags)){
+ foreach ($tags as $i) {
+ echo xmlize( $a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'], $i['author-name'], $i['author-link'], $i['author-avatar'], relative_date($i['created']), 'notify-unseen',sprintf( t("{0} tagged %s's post with #%s"), $i['pname'], $i['tname'] ) );
+ };
+ }
-
-
-/*
-
- if ($intro>0){
- foreach ($intros as $i) {
- echo xmlize( $a->get_baseurl().'/notifications/intros/'.$i['id'], $i['name'], $i['url'], $i['photo'], relative_date($i['datetime']), t("{0} wants to be your friend") );
- };
- }
- if ($mail>0){
- foreach ($mails as $i) {
- echo xmlize( $a->get_baseurl().'/message/'.$i['id'], $i['from-name'], $i['from-url'], $i['from-photo'], relative_date($i['created']), t("{0} sent you a message") );
- };
- }
- if ($register>0){
- foreach ($regs as $i) {
- echo xmlize( $a->get_baseurl().'/admin/users/', $i['name'], $i['url'], $i['micro'], relative_date($i['created']), t("{0} requested registration") );
- };
- }
-
- if (count($comments)){
- foreach ($comments as $i) {
- echo xmlize( $a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'], $i['author-name'], $i['author-link'], $i['author-avatar'], relative_date($i['created']), sprintf( t("{0} commented %s's post"), $i['pname'] ) );
- };
- }
- if (count($likes)){
- foreach ($likes as $i) {
- echo xmlize( $a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'], $i['author-name'], $i['author-link'], $i['author-avatar'], relative_date($i['created']), sprintf( t("{0} liked %s's post"), $i['pname'] ) );
- };
- }
- if (count($dislikes)){
- foreach ($dislikes as $i) {
- echo xmlize( $a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'], $i['author-name'], $i['author-link'], $i['author-avatar'], relative_date($i['created']), sprintf( t("{0} disliked %s's post"), $i['pname'] ) );
- };
- }
- if (count($friends)){
- foreach ($friends as $i) {
- echo xmlize($a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'],$i['author-name'],$i['author-link'], $i['author-avatar'], relative_date($i['created']), sprintf( t("{0} is now friends with %s"), $i['fname'] ) );
- };
- }
- if (count($posts)){
- foreach ($posts as $i) {
- echo xmlize( $a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'], $i['author-name'], $i['author-link'], $i['author-avatar'], relative_date($i['created']), sprintf( t("{0} posted") ) );
- };
- }
- if (count($tags)){
- foreach ($tags as $i) {
- echo xmlize( $a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'], $i['author-name'], $i['author-link'], $i['author-avatar'], relative_date($i['created']), sprintf( t("{0} tagged %s's post with #%s"), $i['pname'], $i['tname'] ) );
- };
- }
-
- if (count($cit)){
- foreach ($cit as $i) {
- echo xmlize( $a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'], $i['author-name'], $i['author-link'], $i['author-avatar'], relative_date($i['created']), t("{0} mentioned you in a post") );
- };
+ if (count($cit)){
+ foreach ($cit as $i) {
+ echo xmlize( $a->get_baseurl().'/display/'.$a->user['nickname']."/".$i['parent'], $i['author-name'], $i['author-link'], $i['author-avatar'], relative_date($i['created']), 'notify-unseen',t("{0} mentioned you in a post") );
+ };
+ }
}
-*/
-
echo " </notif>";
}
echo " <sysmsgs>";
- if(x($_SESSION,'sysmsg')){
- foreach ($_SESSION['sysmsg'] as $m){
- echo "<notice>".xmlify($m)."</notice>";
- }
- unset($_SESSION['sysmsg']);
+ if(x($_SESSION,'sysmsg')){
+ foreach ($_SESSION['sysmsg'] as $m){
+ echo "<notice>".xmlify($m)."</notice>";
}
- if(x($_SESSION,'sysmsg_info')){
- foreach ($_SESSION['sysmsg_info'] as $m){
- echo "<info>".xmlify($m)."</info>";
- }
- unset($_SESSION['sysmsg_info']);
+ unset($_SESSION['sysmsg']);
+ }
+ if(x($_SESSION,'sysmsg_info')){
+ foreach ($_SESSION['sysmsg_info'] as $m){
+ echo "<info>".xmlify($m)."</info>";
}
+ unset($_SESSION['sysmsg_info']);
+ }
echo " </sysmsgs>";
echo"</result>
diff --git a/mod/profile.php b/mod/profile.php
index eba9874a8..74e1a2302 100755
--- a/mod/profile.php
+++ b/mod/profile.php
@@ -107,7 +107,7 @@ function profile_content(&$a, $update = 0) {
$is_owner = ((local_user()) && (local_user() == $a->profile['profile_uid']) ? true : false);
- if($a->profile['hidewall'] && (! $is_owner) && (! $remote_contact)) {
+ if($a->user['hidewall'] && (! $is_owner) && (! $remote_contact)) {
notice( t('Access to this profile has been restricted.') . EOL);
return;
}
@@ -228,10 +228,12 @@ function profile_content(&$a, $update = 0) {
intval($a->profile['profile_uid']),
dbesc($parents_str)
);
+
+ $items = conv_sort($items,'created');
+ } else {
+ $items = array();
}
- $items = conv_sort($items,'created');
-
if($is_owner && ! $update) {
$o .= get_birthdays();
$o .= get_events();
diff --git a/mod/settings.php b/mod/settings.php
index 57a4e6db0..a9d00bc98 100755
--- a/mod/settings.php
+++ b/mod/settings.php
@@ -50,6 +50,8 @@ function settings_post(&$a) {
return;
}
+ $old_page_flags = $a->user['page-flags'];
+
if(($a->argc > 1) && ($a->argv[1] === 'oauth') && x($_POST,'remove')){
$key = $_POST['remove'];
q("DELETE FROM tokens WHERE id='%s' AND uid=%d",
@@ -110,13 +112,15 @@ function settings_post(&$a) {
if(($a->argc > 1) && ($a->argv[1] == 'connectors')) {
if(x($_POST['imap-submit'])) {
- $mail_server = ((x($_POST,'mail_server')) ? $_POST['mail_server'] : '');
- $mail_port = ((x($_POST,'mail_port')) ? $_POST['mail_port'] : '');
- $mail_ssl = ((x($_POST,'mail_ssl')) ? strtolower(trim($_POST['mail_ssl'])) : '');
- $mail_user = ((x($_POST,'mail_user')) ? $_POST['mail_user'] : '');
- $mail_pass = ((x($_POST,'mail_pass')) ? trim($_POST['mail_pass']) : '');
- $mail_replyto = ((x($_POST,'mail_replyto')) ? $_POST['mail_replyto'] : '');
- $mail_pubmail = ((x($_POST,'mail_pubmail')) ? $_POST['mail_pubmail'] : '');
+ $mail_server = ((x($_POST,'mail_server')) ? $_POST['mail_server'] : '');
+ $mail_port = ((x($_POST,'mail_port')) ? $_POST['mail_port'] : '');
+ $mail_ssl = ((x($_POST,'mail_ssl')) ? strtolower(trim($_POST['mail_ssl'])) : '');
+ $mail_user = ((x($_POST,'mail_user')) ? $_POST['mail_user'] : '');
+ $mail_pass = ((x($_POST,'mail_pass')) ? trim($_POST['mail_pass']) : '');
+ $mail_action = ((x($_POST,'mail_action')) ? trim($_POST['mail_action']) : '');
+ $mail_movetofolder = ((x($_POST,'mail_movetofolder')) ? trim($_POST['mail_movetofolder']) : '');
+ $mail_replyto = ((x($_POST,'mail_replyto')) ? $_POST['mail_replyto'] : '');
+ $mail_pubmail = ((x($_POST,'mail_pubmail')) ? $_POST['mail_pubmail'] : '');
$mail_disabled = ((function_exists('imap_open') && (! get_config('system','imap_disabled'))) ? 0 : 1);
@@ -142,11 +146,14 @@ function settings_post(&$a) {
);
}
$r = q("UPDATE `mailacct` SET `server` = '%s', `port` = %d, `ssltype` = '%s', `user` = '%s',
+ `action` = %d, `movetofolder` = '%s',
`mailbox` = 'INBOX', `reply_to` = '%s', `pubmail` = %d WHERE `uid` = %d LIMIT 1",
dbesc($mail_server),
intval($mail_port),
dbesc($mail_ssl),
dbesc($mail_user),
+ intval($mail_action),
+ dbesc($mail_movetofolder),
dbesc($mail_replyto),
intval($mail_pubmail),
intval(local_user())
@@ -210,7 +217,7 @@ function settings_post(&$a) {
}
}
- $theme = ((x($_POST,'theme')) ? notags(trim($_POST['theme'])) : '');
+ $theme = ((x($_POST,'theme')) ? notags(trim($_POST['theme'])) : $a->user['theme']);
$username = ((x($_POST,'username')) ? notags(trim($_POST['username'])) : '');
$email = ((x($_POST,'email')) ? notags(trim($_POST['email'])) : '');
$timezone = ((x($_POST,'timezone')) ? notags(trim($_POST['timezone'])) : '');
@@ -218,8 +225,8 @@ function settings_post(&$a) {
$openid = ((x($_POST,'openid_url')) ? notags(trim($_POST['openid_url'])) : '');
$maxreq = ((x($_POST,'maxreq')) ? intval($_POST['maxreq']) : 0);
$expire = ((x($_POST,'expire')) ? intval($_POST['expire']) : 0);
-
-
+
+
$expire_items = ((x($_POST,'expire_items')) ? intval($_POST['expire_items']) : 0);
$expire_notes = ((x($_POST,'expire_notes')) ? intval($_POST['expire_notes']) : 0);
$expire_starred = ((x($_POST,'expire_starred')) ? intval($_POST['expire_starred']) : 0);
@@ -370,7 +377,7 @@ function settings_post(&$a) {
);
}
- if($old_visibility != $net_publish) {
+ if(($old_visibility != $net_publish) || ($page_flags != $old_page_flags)) {
// Update global directory in background
$url = $_SESSION['my_url'];
if($url && strlen(get_config('system','directory_submit_url')))
@@ -561,23 +568,25 @@ function settings_content(&$a) {
$r = null;
}
- $mail_server = ((count($r)) ? $r[0]['server'] : '');
- $mail_port = ((count($r) && intval($r[0]['port'])) ? intval($r[0]['port']) : '');
- $mail_ssl = ((count($r)) ? $r[0]['ssltype'] : '');
- $mail_user = ((count($r)) ? $r[0]['user'] : '');
- $mail_replyto = ((count($r)) ? $r[0]['reply_to'] : '');
- $mail_pubmail = ((count($r)) ? $r[0]['pubmail'] : 0);
- $mail_chk = ((count($r)) ? $r[0]['last_check'] : '0000-00-00 00:00:00');
+ $mail_server = ((count($r)) ? $r[0]['server'] : '');
+ $mail_port = ((count($r) && intval($r[0]['port'])) ? intval($r[0]['port']) : '');
+ $mail_ssl = ((count($r)) ? $r[0]['ssltype'] : '');
+ $mail_user = ((count($r)) ? $r[0]['user'] : '');
+ $mail_replyto = ((count($r)) ? $r[0]['reply_to'] : '');
+ $mail_pubmail = ((count($r)) ? $r[0]['pubmail'] : 0);
+ $mail_action = ((count($r)) ? $r[0]['action'] : 0);
+ $mail_movetofolder = ((count($r)) ? $r[0]['movetofolder'] : '');
+ $mail_chk = ((count($r)) ? $r[0]['last_check'] : '0000-00-00 00:00:00');
+
-
$tpl = get_markup_template("settings_connectors.tpl");
$o .= replace_macros($tpl, array(
'$title' => t('Connector Settings'),
'$tabs' => $tabs,
-
+
'$diasp_enabled' => $diasp_enabled,
'$ostat_enabled' => $ostat_enabled,
-
+
'$h_imap' => t('Email/Mailbox Setup'),
'$imap_desc' => t("If you wish to communicate with email contacts using this service \x28optional\x29, please specify how to connect to your mailbox."),
'$imap_lastcheck' => array('imap_lastcheck', t('Last successful email check:'), $mail_chk,''),
@@ -589,8 +598,10 @@ function settings_content(&$a) {
'$mail_pass' => array('mail_pass', t('Email password:'), '', ''),
'$mail_replyto' => array('mail_replyto', t('Reply-to address:'), '', 'Optional'),
'$mail_pubmail' => array('mail_pubmail', t('Send public posts to all email contacts:'), $mail_pubmail, ''),
- '$submit' => t('Submit'),
-
+ '$mail_action' => array('mail_action', t('Action after import:'), $mail_action, '', array(0=>t('None'), 1=>t('Delete'), 2=>t('Mark as seen'), 3=>t('Move to folder'))),
+ '$mail_movetofolder' => array('mail_movetofolder', t('Move to folder:'), $mail_movetofolder, ''),
+ '$submit' => t('Submit'),
+
'$settings_connectors' => $settings_connectors
@@ -598,7 +609,7 @@ function settings_content(&$a) {
return $o;
}
-
+
require_once('include/acl_selectors.php');
$p = q("SELECT * FROM `profile` WHERE `is-default` = 1 AND `uid` = %d LIMIT 1",
@@ -728,13 +739,23 @@ function settings_content(&$a) {
$default_theme = get_config('system','theme');
if(! $default_theme)
$default_theme = 'default';
+
+ $allowed_themes_str = get_config('system','allowed_themes');
+ $allowed_themes_raw = explode(',',$allowed_themes_str);
+ $allowed_themes = array();
+ if(count($allowed_themes_raw))
+ foreach($allowed_themes_raw as $x)
+ if(strlen(trim($x)))
+ $allowed_themes[] = trim($x);
+
$themes = array();
$files = glob('view/theme/*');
- if($files) {
- foreach($files as $file) {
- $f = basename($file);
- $is_experimental = file_exists($file . '/experimental');
+ if($allowed_themes) {
+ foreach($allowed_themes as $th) {
+ $f = $th;
+ $is_experimental = file_exists('view/theme/' . $th . '/experimental');
+ $unsupported = file_exists('view/theme/' . $th . '/unsupported');
if (!$is_experimental or ($is_experimental && (get_config('experimentals','exp_themes')==1 or get_config('experimentals','exp_themes')===false))){
$theme_name = (($is_experimental) ? sprintf("%s - \x28Experimental\x29", $f) : $f);
$themes[$f]=$theme_name;
diff --git a/mod/tagger.php b/mod/tagger.php
index 76ec3366c..3ff5d57aa 100755
--- a/mod/tagger.php
+++ b/mod/tagger.php
@@ -134,6 +134,7 @@ EOT;
$arr['target'] = $target;
$arr['object-type'] = $objtype;
$arr['object'] = $obj;
+ $arr['private'] = $item['private'];
$arr['allow_cid'] = $item['allow_cid'];
$arr['allow_gid'] = $item['allow_gid'];
$arr['deny_cid'] = $item['deny_cid'];
diff --git a/mod/viewcontacts.php b/mod/viewcontacts.php
index 10c980d93..6b66f60d7 100755
--- a/mod/viewcontacts.php
+++ b/mod/viewcontacts.php
@@ -63,7 +63,8 @@ function viewcontacts_content(&$a) {
'username' => $rr['name'],
'url' => $url,
'sparkle' => '',
- 'item' => $rr,
+ 'itemurl' => $rr['url'],
+ 'network' => network_to_name($rr['network']),
);
}
diff --git a/update.php b/update.php
index 16c1d7848..8ca5ef90b 100755
--- a/update.php
+++ b/update.php
@@ -1,6 +1,6 @@
<?php
-define( 'UPDATE_VERSION' , 1123 );
+define( 'UPDATE_VERSION' , 1129 );
/**
*
@@ -1068,4 +1068,49 @@ function update_1121() {
function update_1122() {
q("ALTER TABLE `notify` ADD `hash` CHAR( 64 ) NOT NULL AFTER `id` ,
ADD INDEX ( `hash` ) ");
-} \ No newline at end of file
+}
+
+function update_1123() {
+set_config('system','allowed_themes','dispy,quattro,testbubble,vier,darkbubble,darkzero,duepuntozero,greenzero,purplezero,quattro-green,slackr');
+}
+
+function update_1124() {
+q("alter table item add index (`author-name`) ");
+}
+
+function update_1125() {
+ q("CREATE TABLE IF NOT EXISTS `notify-threads` (
+ `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
+ `notify-id` INT NOT NULL,
+ `master-parent-item` INT( 10 ) unsigned NOT NULL DEFAULT '0',
+ `parent-item` INT( 10 ) unsigned NOT NULL DEFAULT '0',
+ `receiver-uid` INT NOT NULL,
+ INDEX ( `master-parent-item` ),
+ INDEX ( `receiver-uid` )
+ ) ENGINE = MyISAM DEFAULT CHARSET=utf8");
+}
+
+function update_1126() {
+ q("ALTER TABLE `mailacct` ADD `action` INT NOT NULL AFTER `pass`,
+ ADD `movetofolder` CHAR(255) NOT NULL AFTER `action`");
+}
+
+function update_1127() {
+ q("CREATE TABLE IF NOT EXISTS `spam` (
+ `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
+ `uid` INT NOT NULL,
+ `spam` INT NOT NULL DEFAULT '0',
+ `ham` INT NOT NULL DEFAULT '0',
+ `term` CHAR(255) NOT NULL,
+ INDEX ( `uid` ),
+ INDEX ( `spam` ),
+ INDEX ( `ham` ),
+ INDEX ( `term` )
+ ) ENGINE = MyISAM DEFAULT CHARSET=utf8");
+}
+
+
+function update_1128() {
+ q("alter table spam add `date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' AFTER `term` ");
+}
+
diff --git a/util/messages.po b/util/messages.po
index 6e1652b39..1f2575603 100755
--- a/util/messages.po
+++ b/util/messages.po
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: 2.3.1250\n"
+"Project-Id-Version: 2.3.1262\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-02-12 17:14-0800\n"
+"POT-Creation-Date: 2012-02-24 22:44-0800\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"
@@ -17,7 +17,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
-#: ../../mod/oexchange.php:27
+#: ../../mod/oexchange.php:25
msgid "Post successful."
msgstr ""
@@ -35,24 +35,24 @@ msgid "Contact update failed."
msgstr ""
#: ../../mod/crepair.php:115 ../../mod/wall_attach.php:43
-#: ../../mod/fsuggest.php:78 ../../mod/events.php:109 ../../mod/api.php:26
+#: ../../mod/fsuggest.php:78 ../../mod/events.php:110 ../../mod/api.php:26
#: ../../mod/api.php:31 ../../mod/photos.php:129 ../../mod/photos.php:865
#: ../../mod/editpost.php:10 ../../mod/install.php:171
#: ../../mod/notifications.php:62 ../../mod/contacts.php:125
#: ../../mod/settings.php:49 ../../mod/settings.php:404
#: ../../mod/settings.php:409 ../../mod/manage.php:86 ../../mod/network.php:6
#: ../../mod/notes.php:20 ../../mod/attach.php:33 ../../mod/group.php:19
-#: ../../mod/viewcontacts.php:21 ../../mod/register.php:36
-#: ../../mod/regmod.php:111 ../../mod/item.php:123 ../../mod/item.php:139
+#: ../../mod/viewcontacts.php:22 ../../mod/register.php:36
+#: ../../mod/regmod.php:111 ../../mod/item.php:124 ../../mod/item.php:140
#: ../../mod/profile_photo.php:19 ../../mod/profile_photo.php:137
#: ../../mod/profile_photo.php:148 ../../mod/profile_photo.php:159
#: ../../mod/message.php:9 ../../mod/message.php:46 ../../mod/allfriends.php:9
#: ../../mod/wall_upload.php:42 ../../mod/follow.php:8 ../../mod/common.php:9
-#: ../../mod/display.php:112 ../../mod/profiles.php:7
+#: ../../mod/display.php:130 ../../mod/profiles.php:7
#: ../../mod/profiles.php:229 ../../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:331
-#: ../../include/items.php:2907 ../../index.php:288
+#: ../../mod/dfrn_confirm.php:53 ../../addon/facebook/facebook.php:332
+#: ../../include/items.php:2968 ../../index.php:288
msgid "Permission denied."
msgstr ""
@@ -82,7 +82,7 @@ msgid "Return to contact editor"
msgstr ""
#: ../../mod/crepair.php:148 ../../mod/settings.php:455
-#: ../../mod/settings.php:481 ../../mod/admin.php:464 ../../mod/admin.php:473
+#: ../../mod/settings.php:481 ../../mod/admin.php:480 ../../mod/admin.php:489
msgid "Name"
msgstr ""
@@ -119,33 +119,37 @@ msgid "New photo from this URL"
msgstr ""
#: ../../mod/crepair.php:166 ../../mod/fsuggest.php:107
-#: ../../mod/events.php:333 ../../mod/photos.php:900 ../../mod/photos.php:958
+#: ../../mod/events.php:400 ../../mod/photos.php:900 ../../mod/photos.php:958
#: ../../mod/photos.php:1182 ../../mod/photos.php:1222
#: ../../mod/photos.php:1262 ../../mod/photos.php:1293
#: ../../mod/install.php:251 ../../mod/install.php:289
#: ../../mod/localtime.php:45 ../../mod/contacts.php:319
#: ../../mod/settings.php:453 ../../mod/settings.php:592
-#: ../../mod/settings.php:773 ../../mod/manage.php:109 ../../mod/group.php:84
-#: ../../mod/group.php:167 ../../mod/admin.php:296 ../../mod/admin.php:461
-#: ../../mod/admin.php:587 ../../mod/admin.php:652 ../../mod/profiles.php:375
-#: ../../mod/invite.php:106 ../../addon/facebook/facebook.php:410
-#: ../../addon/yourls/yourls.php:76 ../../addon/nsfw/nsfw.php:57
+#: ../../mod/settings.php:786 ../../mod/manage.php:109 ../../mod/group.php:84
+#: ../../mod/group.php:167 ../../mod/admin.php:312 ../../mod/admin.php:477
+#: ../../mod/admin.php:603 ../../mod/admin.php:769 ../../mod/admin.php:847
+#: ../../mod/profiles.php:375 ../../mod/invite.php:106
+#: ../../addon/facebook/facebook.php:411 ../../addon/yourls/yourls.php:76
+#: ../../addon/nsfw/nsfw.php:57
#: ../../addon/uhremotestorage/uhremotestorage.php:89
#: ../../addon/randplace/randplace.php:179 ../../addon/drpost/drpost.php:110
#: ../../addon/geonames/geonames.php:187 ../../addon/oembed.old/oembed.php:41
#: ../../addon/impressum/impressum.php:69 ../../addon/blockem/blockem.php:57
+#: ../../addon/qcomment/qcomment.php:60
+#: ../../addon/openstreetmap/openstreetmap.php:70
#: ../../addon/editplain/editplain.php:84 ../../addon/blackout/blackout.php:94
#: ../../addon/pageheader/pageheader.php:52
-#: ../../addon/statusnet/statusnet.php:280
-#: ../../addon/statusnet/statusnet.php:294
+#: ../../addon/statusnet/statusnet.php:273
+#: ../../addon/statusnet/statusnet.php:287
+#: ../../addon/statusnet/statusnet.php:313
#: ../../addon/statusnet/statusnet.php:320
-#: ../../addon/statusnet/statusnet.php:327
-#: ../../addon/statusnet/statusnet.php:349
-#: ../../addon/statusnet/statusnet.php:495 ../../addon/tumblr/tumblr.php:90
+#: ../../addon/statusnet/statusnet.php:345
+#: ../../addon/statusnet/statusnet.php:532 ../../addon/tumblr/tumblr.php:90
#: ../../addon/numfriends/numfriends.php:85 ../../addon/wppost/wppost.php:102
-#: ../../addon/piwik/piwik.php:81 ../../addon/twitter/twitter.php:180
-#: ../../addon/twitter/twitter.php:203 ../../addon/twitter/twitter.php:315
-#: ../../addon/posterous/posterous.php:90 ../../include/conversation.php:515
+#: ../../addon/showmore/showmore.php:48 ../../addon/piwik/piwik.php:89
+#: ../../addon/twitter/twitter.php:175 ../../addon/twitter/twitter.php:201
+#: ../../addon/twitter/twitter.php:355 ../../addon/posterous/posterous.php:90
+#: ../../include/conversation.php:542
msgid "Submit"
msgstr ""
@@ -187,82 +191,82 @@ msgstr ""
msgid "Suggest a friend for %s"
msgstr ""
-#: ../../mod/events.php:61
+#: ../../mod/events.php:62
msgid "Event description and start time are required."
msgstr ""
-#: ../../mod/events.php:117 ../../include/nav.php:50 ../../boot.php:1345
-msgid "Events"
+#: ../../mod/events.php:230
+msgid "l, F j"
msgstr ""
-#: ../../mod/events.php:207
-msgid "Create New Event"
+#: ../../mod/events.php:252
+msgid "Edit event"
msgstr ""
-#: ../../mod/events.php:210
-msgid "Previous"
+#: ../../mod/events.php:272 ../../include/text.php:964
+msgid "link to source"
msgstr ""
-#: ../../mod/events.php:213 ../../mod/install.php:210
-msgid "Next"
+#: ../../mod/events.php:296 ../../include/nav.php:50 ../../boot.php:1349
+msgid "Events"
msgstr ""
-#: ../../mod/events.php:220
-msgid "l, F j"
+#: ../../mod/events.php:297
+msgid "Create New Event"
msgstr ""
-#: ../../mod/events.php:235
-msgid "Edit event"
+#: ../../mod/events.php:298
+msgid "Previous"
msgstr ""
-#: ../../mod/events.php:237 ../../include/text.php:883
-msgid "link to source"
+#: ../../mod/events.php:299 ../../mod/install.php:210
+msgid "Next"
msgstr ""
-#: ../../mod/events.php:305
+#: ../../mod/events.php:371
msgid "hour:minute"
msgstr ""
-#: ../../mod/events.php:314
+#: ../../mod/events.php:380
msgid "Event details"
msgstr ""
-#: ../../mod/events.php:315
+#: ../../mod/events.php:381
#, php-format
msgid "Format is %s %s. Starting date and Description are required."
msgstr ""
-#: ../../mod/events.php:316
+#: ../../mod/events.php:383
msgid "Event Starts:"
msgstr ""
-#: ../../mod/events.php:319
+#: ../../mod/events.php:386
msgid "Finish date/time is not known or not relevant"
msgstr ""
-#: ../../mod/events.php:321
+#: ../../mod/events.php:388
msgid "Event Finishes:"
msgstr ""
-#: ../../mod/events.php:324
+#: ../../mod/events.php:391
msgid "Adjust for viewer timezone"
msgstr ""
-#: ../../mod/events.php:326
+#: ../../mod/events.php:393
msgid "Description:"
msgstr ""
-#: ../../mod/events.php:328 ../../include/event.php:37
-#: ../../include/bb2diaspora.php:271 ../../boot.php:976
+#: ../../mod/events.php:395 ../../include/event.php:37
+#: ../../include/bb2diaspora.php:290 ../../boot.php:980
msgid "Location:"
msgstr ""
-#: ../../mod/events.php:330
+#: ../../mod/events.php:397
msgid "Share this event"
msgstr ""
#: ../../mod/tagrm.php:11 ../../mod/tagrm.php:94
-#: ../../mod/dfrn_request.php:685 ../../mod/settings.php:454
+#: ../../mod/dfrn_request.php:686 ../../mod/settings.php:454
#: ../../mod/settings.php:480 ../../addon/js_upload/js_upload.php:45
msgid "Cancel"
msgstr ""
@@ -306,24 +310,24 @@ msgid ""
"and/or create new posts for you?"
msgstr ""
-#: ../../mod/api.php:105 ../../mod/dfrn_request.php:675
+#: ../../mod/api.php:105 ../../mod/dfrn_request.php:676
#: ../../mod/settings.php:681 ../../mod/settings.php:687
#: ../../mod/settings.php:695 ../../mod/settings.php:699
#: ../../mod/settings.php:704 ../../mod/settings.php:710
-#: ../../mod/settings.php:716 ../../mod/settings.php:763
-#: ../../mod/settings.php:764 ../../mod/settings.php:765
-#: ../../mod/settings.php:766 ../../mod/register.php:524
+#: ../../mod/settings.php:716 ../../mod/settings.php:776
+#: ../../mod/settings.php:777 ../../mod/settings.php:778
+#: ../../mod/settings.php:779 ../../mod/register.php:524
#: ../../mod/profiles.php:357
msgid "Yes"
msgstr ""
-#: ../../mod/api.php:106 ../../mod/dfrn_request.php:676
+#: ../../mod/api.php:106 ../../mod/dfrn_request.php:677
#: ../../mod/settings.php:681 ../../mod/settings.php:687
#: ../../mod/settings.php:695 ../../mod/settings.php:699
#: ../../mod/settings.php:704 ../../mod/settings.php:710
-#: ../../mod/settings.php:716 ../../mod/settings.php:763
-#: ../../mod/settings.php:764 ../../mod/settings.php:765
-#: ../../mod/settings.php:766 ../../mod/register.php:525
+#: ../../mod/settings.php:716 ../../mod/settings.php:776
+#: ../../mod/settings.php:777 ../../mod/settings.php:778
+#: ../../mod/settings.php:779 ../../mod/register.php:525
#: ../../mod/profiles.php:358
msgid "No"
msgstr ""
@@ -378,8 +382,8 @@ msgstr ""
#: ../../mod/photos.php:528 ../../mod/like.php:127 ../../mod/tagger.php:70
#: ../../addon/communityhome/communityhome.php:163
-#: ../../include/diaspora.php:1587 ../../include/conversation.php:31
-#: ../../include/conversation.php:104
+#: ../../include/diaspora.php:1600 ../../include/conversation.php:53
+#: ../../include/conversation.php:126
msgid "photo"
msgstr ""
@@ -387,7 +391,7 @@ msgstr ""
msgid "by"
msgstr ""
-#: ../../mod/photos.php:631 ../../addon/js_upload/js_upload.php:312
+#: ../../mod/photos.php:631 ../../addon/js_upload/js_upload.php:315
msgid "Image exceeds size limit of "
msgstr ""
@@ -406,8 +410,8 @@ msgid "Image upload failed."
msgstr ""
#: ../../mod/photos.php:759 ../../mod/community.php:16
-#: ../../mod/dfrn_request.php:624 ../../mod/viewcontacts.php:16
-#: ../../mod/display.php:7 ../../mod/search.php:71 ../../mod/directory.php:31
+#: ../../mod/dfrn_request.php:625 ../../mod/viewcontacts.php:17
+#: ../../mod/display.php:7 ../../mod/search.php:71 ../../mod/directory.php:33
msgid "Public access denied."
msgstr ""
@@ -467,7 +471,7 @@ msgstr ""
msgid "Use as profile photo"
msgstr ""
-#: ../../mod/photos.php:1078 ../../include/conversation.php:450
+#: ../../mod/photos.php:1078 ../../include/conversation.php:472
msgid "Private Message"
msgstr ""
@@ -499,44 +503,44 @@ msgstr ""
msgid "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping"
msgstr ""
-#: ../../mod/photos.php:1200 ../../include/conversation.php:497
+#: ../../mod/photos.php:1200 ../../include/conversation.php:519
msgid "I like this (toggle)"
msgstr ""
-#: ../../mod/photos.php:1201 ../../include/conversation.php:498
+#: ../../mod/photos.php:1201 ../../include/conversation.php:520
msgid "I don't like this (toggle)"
msgstr ""
-#: ../../mod/photos.php:1202 ../../include/conversation.php:889
+#: ../../mod/photos.php:1202 ../../include/conversation.php:914
msgid "Share"
msgstr ""
-#: ../../mod/photos.php:1203 ../../mod/editpost.php:100
+#: ../../mod/photos.php:1203 ../../mod/editpost.php:104
#: ../../mod/message.php:155 ../../mod/message.php:296
-#: ../../include/conversation.php:321 ../../include/conversation.php:652
-#: ../../include/conversation.php:906
+#: ../../include/conversation.php:343 ../../include/conversation.php:677
+#: ../../include/conversation.php:931
msgid "Please wait"
msgstr ""
#: ../../mod/photos.php:1219 ../../mod/photos.php:1259
-#: ../../mod/photos.php:1290 ../../include/conversation.php:512
+#: ../../mod/photos.php:1290 ../../include/conversation.php:539
msgid "This is you"
msgstr ""
#: ../../mod/photos.php:1221 ../../mod/photos.php:1261
-#: ../../mod/photos.php:1292 ../../include/conversation.php:514
-#: ../../boot.php:443
+#: ../../mod/photos.php:1292 ../../include/conversation.php:541
+#: ../../boot.php:447
msgid "Comment"
msgstr ""
-#: ../../mod/photos.php:1223 ../../mod/editpost.php:119
-#: ../../include/conversation.php:516 ../../include/conversation.php:924
+#: ../../mod/photos.php:1223 ../../mod/editpost.php:123
+#: ../../include/conversation.php:543 ../../include/conversation.php:949
msgid "Preview"
msgstr ""
#: ../../mod/photos.php:1320 ../../mod/settings.php:513
-#: ../../mod/group.php:154 ../../mod/admin.php:468
-#: ../../include/conversation.php:280 ../../include/conversation.php:536
+#: ../../mod/group.php:154 ../../mod/admin.php:484
+#: ../../include/conversation.php:302 ../../include/conversation.php:563
msgid "Delete"
msgstr ""
@@ -596,70 +600,70 @@ msgstr ""
msgid "Item not found"
msgstr ""
-#: ../../mod/editpost.php:32
+#: ../../mod/editpost.php:36
msgid "Edit post"
msgstr ""
-#: ../../mod/editpost.php:76 ../../include/conversation.php:875
+#: ../../mod/editpost.php:80 ../../include/conversation.php:900
msgid "Post to Email"
msgstr ""
-#: ../../mod/editpost.php:91 ../../mod/settings.php:512
-#: ../../include/conversation.php:523
+#: ../../mod/editpost.php:95 ../../mod/settings.php:512
+#: ../../include/conversation.php:550
msgid "Edit"
msgstr ""
-#: ../../mod/editpost.php:92 ../../mod/message.php:153
-#: ../../mod/message.php:294 ../../include/conversation.php:890
+#: ../../mod/editpost.php:96 ../../mod/message.php:153
+#: ../../mod/message.php:294 ../../include/conversation.php:915
msgid "Upload photo"
msgstr ""
-#: ../../mod/editpost.php:93 ../../include/conversation.php:892
+#: ../../mod/editpost.php:97 ../../include/conversation.php:917
msgid "Attach file"
msgstr ""
-#: ../../mod/editpost.php:94 ../../mod/message.php:154
-#: ../../mod/message.php:295 ../../include/conversation.php:894
+#: ../../mod/editpost.php:98 ../../mod/message.php:154
+#: ../../mod/message.php:295 ../../include/conversation.php:919
msgid "Insert web link"
msgstr ""
-#: ../../mod/editpost.php:95
+#: ../../mod/editpost.php:99
msgid "Insert YouTube video"
msgstr ""
-#: ../../mod/editpost.php:96
+#: ../../mod/editpost.php:100
msgid "Insert Vorbis [.ogg] video"
msgstr ""
-#: ../../mod/editpost.php:97
+#: ../../mod/editpost.php:101
msgid "Insert Vorbis [.ogg] audio"
msgstr ""
-#: ../../mod/editpost.php:98 ../../include/conversation.php:900
+#: ../../mod/editpost.php:102 ../../include/conversation.php:925
msgid "Set your location"
msgstr ""
-#: ../../mod/editpost.php:99 ../../include/conversation.php:902
+#: ../../mod/editpost.php:103 ../../include/conversation.php:927
msgid "Clear browser location"
msgstr ""
-#: ../../mod/editpost.php:101 ../../include/conversation.php:907
+#: ../../mod/editpost.php:105 ../../include/conversation.php:932
msgid "Permission settings"
msgstr ""
-#: ../../mod/editpost.php:109 ../../include/conversation.php:916
+#: ../../mod/editpost.php:113 ../../include/conversation.php:941
msgid "CC: email addresses"
msgstr ""
-#: ../../mod/editpost.php:110 ../../include/conversation.php:917
+#: ../../mod/editpost.php:114 ../../include/conversation.php:942
msgid "Public post"
msgstr ""
-#: ../../mod/editpost.php:113 ../../include/conversation.php:905
+#: ../../mod/editpost.php:117 ../../include/conversation.php:930
msgid "Set title"
msgstr ""
-#: ../../mod/editpost.php:114 ../../include/conversation.php:919
+#: ../../mod/editpost.php:118 ../../include/conversation.php:944
msgid "Example: bob@example.com, mary@example.com"
msgstr ""
@@ -768,68 +772,68 @@ msgstr ""
msgid "Confirm"
msgstr ""
-#: ../../mod/dfrn_request.php:581 ../../include/items.php:2443
+#: ../../mod/dfrn_request.php:582 ../../include/items.php:2504
msgid "[Name Withheld]"
msgstr ""
-#: ../../mod/dfrn_request.php:665
+#: ../../mod/dfrn_request.php:666
#, php-format
msgid ""
"Diaspora members: Please do not use this form. Instead, enter \"%s\" into "
"your Diaspora search bar."
msgstr ""
-#: ../../mod/dfrn_request.php:668
+#: ../../mod/dfrn_request.php:669
msgid ""
"Please enter your 'Identity Address' from one of the following supported "
"social networks:"
msgstr ""
-#: ../../mod/dfrn_request.php:671
+#: ../../mod/dfrn_request.php:672
msgid "Friend/Connection Request"
msgstr ""
-#: ../../mod/dfrn_request.php:672
+#: ../../mod/dfrn_request.php:673
msgid ""
"Examples: jojo@demo.friendica.com, http://demo.friendica.com/profile/jojo, "
"testuser@identi.ca"
msgstr ""
-#: ../../mod/dfrn_request.php:673
+#: ../../mod/dfrn_request.php:674
msgid "Please answer the following:"
msgstr ""
-#: ../../mod/dfrn_request.php:674
+#: ../../mod/dfrn_request.php:675
#, php-format
msgid "Does %s know you?"
msgstr ""
-#: ../../mod/dfrn_request.php:677
+#: ../../mod/dfrn_request.php:678
msgid "Add a personal note:"
msgstr ""
-#: ../../mod/dfrn_request.php:679 ../../include/contact_selectors.php:76
+#: ../../mod/dfrn_request.php:680 ../../include/contact_selectors.php:76
msgid "Friendica"
msgstr ""
-#: ../../mod/dfrn_request.php:680
+#: ../../mod/dfrn_request.php:681
msgid "StatusNet/Federated Social Web"
msgstr ""
-#: ../../mod/dfrn_request.php:681 ../../mod/settings.php:548
+#: ../../mod/dfrn_request.php:682 ../../mod/settings.php:548
#: ../../include/contact_selectors.php:80
msgid "Diaspora"
msgstr ""
-#: ../../mod/dfrn_request.php:682
+#: ../../mod/dfrn_request.php:683
msgid "- please share from your own site as noted above"
msgstr ""
-#: ../../mod/dfrn_request.php:683
+#: ../../mod/dfrn_request.php:684
msgid "Your Identity Address:"
msgstr ""
-#: ../../mod/dfrn_request.php:684
+#: ../../mod/dfrn_request.php:685
msgid "Submit Request"
msgstr ""
@@ -1078,7 +1082,7 @@ msgid "Errors encountered creating database tables."
msgstr ""
#: ../../mod/localtime.php:12 ../../include/event.php:11
-#: ../../include/bb2diaspora.php:249
+#: ../../include/bb2diaspora.php:268
msgid "l F d, Y \\@ g:i A"
msgstr ""
@@ -1124,7 +1128,7 @@ msgid "is interested in:"
msgstr ""
#: ../../mod/match.php:58 ../../mod/suggest.php:59
-#: ../../include/contact_widgets.php:9 ../../boot.php:926
+#: ../../include/contact_widgets.php:9 ../../boot.php:930
msgid "Connect"
msgstr ""
@@ -1149,165 +1153,187 @@ msgstr ""
msgid "Invalid request identifier."
msgstr ""
-#: ../../mod/notifications.php:35 ../../mod/notifications.php:152
-#: ../../mod/notifications.php:198
+#: ../../mod/notifications.php:35 ../../mod/notifications.php:157
+#: ../../mod/notifications.php:203
msgid "Discard"
msgstr ""
-#: ../../mod/notifications.php:47 ../../mod/notifications.php:151
-#: ../../mod/notifications.php:197 ../../mod/contacts.php:302
+#: ../../mod/notifications.php:47 ../../mod/notifications.php:156
+#: ../../mod/notifications.php:202 ../../mod/contacts.php:302
#: ../../mod/contacts.php:345
msgid "Ignore"
msgstr ""
-#: ../../mod/notifications.php:71 ../../include/nav.php:109
+#: ../../mod/notifications.php:71
+msgid "System"
+msgstr ""
+
+#: ../../mod/notifications.php:76 ../../include/nav.php:109
msgid "Network"
msgstr ""
-#: ../../mod/notifications.php:76 ../../mod/network.php:177
+#: ../../mod/notifications.php:81 ../../mod/network.php:177
msgid "Personal"
msgstr ""
-#: ../../mod/notifications.php:81 ../../include/nav.php:73
+#: ../../mod/notifications.php:86 ../../include/nav.php:73
#: ../../include/nav.php:111
msgid "Home"
msgstr ""
-#: ../../mod/notifications.php:86 ../../include/nav.php:117
+#: ../../mod/notifications.php:91 ../../include/nav.php:117
msgid "Introductions"
msgstr ""
-#: ../../mod/notifications.php:91 ../../mod/message.php:76
-#: ../../include/nav.php:123
+#: ../../mod/notifications.php:96 ../../mod/message.php:76
+#: ../../include/nav.php:124
msgid "Messages"
msgstr ""
-#: ../../mod/notifications.php:110
+#: ../../mod/notifications.php:115
msgid "Show Ignored Requests"
msgstr ""
-#: ../../mod/notifications.php:110
+#: ../../mod/notifications.php:115
msgid "Hide Ignored Requests"
msgstr ""
-#: ../../mod/notifications.php:136 ../../mod/notifications.php:182
+#: ../../mod/notifications.php:141 ../../mod/notifications.php:187
msgid "Notification type: "
msgstr ""
-#: ../../mod/notifications.php:137
+#: ../../mod/notifications.php:142
msgid "Friend Suggestion"
msgstr ""
-#: ../../mod/notifications.php:139
+#: ../../mod/notifications.php:144
#, php-format
msgid "suggested by %s"
msgstr ""
-#: ../../mod/notifications.php:144 ../../mod/notifications.php:191
+#: ../../mod/notifications.php:149 ../../mod/notifications.php:196
#: ../../mod/contacts.php:350
msgid "Hide this contact from others"
msgstr ""
-#: ../../mod/notifications.php:145 ../../mod/notifications.php:192
+#: ../../mod/notifications.php:150 ../../mod/notifications.php:197
msgid "Post a new friend activity"
msgstr ""
-#: ../../mod/notifications.php:145 ../../mod/notifications.php:192
+#: ../../mod/notifications.php:150 ../../mod/notifications.php:197
msgid "if applicable"
msgstr ""
-#: ../../mod/notifications.php:148 ../../mod/notifications.php:195
-#: ../../mod/admin.php:466
+#: ../../mod/notifications.php:153 ../../mod/notifications.php:200
+#: ../../mod/admin.php:482
msgid "Approve"
msgstr ""
-#: ../../mod/notifications.php:168
+#: ../../mod/notifications.php:173
msgid "Claims to be known to you: "
msgstr ""
-#: ../../mod/notifications.php:168
+#: ../../mod/notifications.php:173
msgid "yes"
msgstr ""
-#: ../../mod/notifications.php:168
+#: ../../mod/notifications.php:173
msgid "no"
msgstr ""
-#: ../../mod/notifications.php:175
+#: ../../mod/notifications.php:180
msgid "Approve as: "
msgstr ""
-#: ../../mod/notifications.php:176
+#: ../../mod/notifications.php:181
msgid "Friend"
msgstr ""
-#: ../../mod/notifications.php:177
+#: ../../mod/notifications.php:182
msgid "Sharer"
msgstr ""
-#: ../../mod/notifications.php:177
+#: ../../mod/notifications.php:182
msgid "Fan/Admirer"
msgstr ""
-#: ../../mod/notifications.php:183
+#: ../../mod/notifications.php:188
msgid "Friend/Connect Request"
msgstr ""
-#: ../../mod/notifications.php:183
+#: ../../mod/notifications.php:188
msgid "New Follower"
msgstr ""
-#: ../../mod/notifications.php:204
+#: ../../mod/notifications.php:209
msgid "No introductions."
msgstr ""
-#: ../../mod/notifications.php:207 ../../mod/notifications.php:293
-#: ../../mod/notifications.php:388 ../../mod/notifications.php:469
-#: ../../include/nav.php:118
+#: ../../mod/notifications.php:212 ../../include/nav.php:118
msgid "Notifications"
msgstr ""
-#: ../../mod/notifications.php:244 ../../mod/notifications.php:339
-#: ../../mod/notifications.php:426
+#: ../../mod/notifications.php:249 ../../mod/notifications.php:374
+#: ../../mod/notifications.php:461
#, php-format
msgid "%s liked %s's post"
msgstr ""
-#: ../../mod/notifications.php:253 ../../mod/notifications.php:348
-#: ../../mod/notifications.php:435
+#: ../../mod/notifications.php:258 ../../mod/notifications.php:383
+#: ../../mod/notifications.php:470
#, php-format
msgid "%s disliked %s's post"
msgstr ""
-#: ../../mod/notifications.php:267 ../../mod/notifications.php:362
-#: ../../mod/notifications.php:449
+#: ../../mod/notifications.php:272 ../../mod/notifications.php:397
+#: ../../mod/notifications.php:484
#, php-format
msgid "%s is now friends with %s"
msgstr ""
-#: ../../mod/notifications.php:274 ../../mod/notifications.php:369
+#: ../../mod/notifications.php:279 ../../mod/notifications.php:404
#, php-format
msgid "%s created a new post"
msgstr ""
-#: ../../mod/notifications.php:275 ../../mod/notifications.php:370
-#: ../../mod/notifications.php:458
+#: ../../mod/notifications.php:280 ../../mod/notifications.php:405
+#: ../../mod/notifications.php:493
#, php-format
msgid "%s commented on %s's post"
msgstr ""
-#: ../../mod/notifications.php:289
+#: ../../mod/notifications.php:294
msgid "No more network notifications."
msgstr ""
-#: ../../mod/notifications.php:384
+#: ../../mod/notifications.php:298
+msgid "Network Notifications"
+msgstr ""
+
+#: ../../mod/notifications.php:324 ../../mod/notify.php:59
+msgid "No more system notifications."
+msgstr ""
+
+#: ../../mod/notifications.php:328 ../../mod/notify.php:63
+msgid "System Notifications"
+msgstr ""
+
+#: ../../mod/notifications.php:419
msgid "No more personal notifications."
msgstr ""
-#: ../../mod/notifications.php:465
+#: ../../mod/notifications.php:423
+msgid "Personal Notifications"
+msgstr ""
+
+#: ../../mod/notifications.php:500
msgid "No more home notifications."
msgstr ""
+#: ../../mod/notifications.php:504
+msgid "Home Notifications"
+msgstr ""
+
#: ../../mod/contacts.php:63 ../../mod/contacts.php:143
msgid "Could not access contact record."
msgstr ""
@@ -1396,12 +1422,12 @@ msgid "View all contacts"
msgstr ""
#: ../../mod/contacts.php:297 ../../mod/contacts.php:344
-#: ../../mod/admin.php:470
+#: ../../mod/admin.php:486
msgid "Unblock"
msgstr ""
#: ../../mod/contacts.php:297 ../../mod/contacts.php:344
-#: ../../mod/admin.php:469
+#: ../../mod/admin.php:485
msgid "Block"
msgstr ""
@@ -1436,8 +1462,8 @@ msgstr ""
msgid "Edit contact notes"
msgstr ""
-#: ../../mod/contacts.php:328 ../../mod/contacts.php:458
-#: ../../mod/viewcontacts.php:61
+#: ../../mod/contacts.php:328 ../../mod/contacts.php:497
+#: ../../mod/viewcontacts.php:60
#, php-format
msgid "Visit %s's profile [%s]"
msgstr ""
@@ -1470,7 +1496,7 @@ msgstr ""
msgid "Update public posts"
msgstr ""
-#: ../../mod/contacts.php:341 ../../mod/admin.php:701
+#: ../../mod/contacts.php:341 ../../mod/admin.php:896
msgid "Update now"
msgstr ""
@@ -1487,52 +1513,60 @@ msgid ""
"Replies/likes to your public posts <strong>may</strong> still be visible"
msgstr ""
-#: ../../mod/contacts.php:387 ../../include/nav.php:131
-msgid "Contacts"
-msgstr ""
-
-#: ../../mod/contacts.php:389
-msgid "Show Unblocked Contacts"
+#: ../../mod/contacts.php:399 ../../mod/group.php:194
+msgid "All Contacts"
msgstr ""
-#: ../../mod/contacts.php:389
-msgid "Show Blocked Contacts"
+#: ../../mod/contacts.php:404
+msgid "Unblocked Contacts"
msgstr ""
-#: ../../mod/contacts.php:391
-msgid "Show All Contacts"
+#: ../../mod/contacts.php:410
+msgid "Blocked Contacts"
msgstr ""
-#: ../../mod/contacts.php:393
-msgid "Search your contacts"
+#: ../../mod/contacts.php:416
+msgid "Ignored Contacts"
msgstr ""
-#: ../../mod/contacts.php:394 ../../mod/directory.php:65
-msgid "Finding: "
+#: ../../mod/contacts.php:422
+msgid "Hidden Contacts"
msgstr ""
-#: ../../mod/contacts.php:395 ../../mod/directory.php:67
-#: ../../include/contact_widgets.php:34
-msgid "Find"
-msgstr ""
-
-#: ../../mod/contacts.php:434
+#: ../../mod/contacts.php:473
msgid "Mutual Friendship"
msgstr ""
-#: ../../mod/contacts.php:438
+#: ../../mod/contacts.php:477
msgid "is a fan of yours"
msgstr ""
-#: ../../mod/contacts.php:442
+#: ../../mod/contacts.php:481
msgid "you are a fan of"
msgstr ""
-#: ../../mod/contacts.php:459 ../../include/Contact.php:135
-#: ../../include/conversation.php:748
+#: ../../mod/contacts.php:498 ../../include/Contact.php:135
+#: ../../include/conversation.php:773
msgid "Edit contact"
msgstr ""
+#: ../../mod/contacts.php:518 ../../include/nav.php:132
+msgid "Contacts"
+msgstr ""
+
+#: ../../mod/contacts.php:522
+msgid "Search your contacts"
+msgstr ""
+
+#: ../../mod/contacts.php:523 ../../mod/directory.php:67
+msgid "Finding: "
+msgstr ""
+
+#: ../../mod/contacts.php:524 ../../mod/directory.php:69
+#: ../../include/contact_widgets.php:34
+msgid "Find"
+msgstr ""
+
#: ../../mod/lostpass.php:16
msgid "No valid account found."
msgstr ""
@@ -1549,7 +1583,7 @@ msgstr ""
#: ../../mod/lostpass.php:44 ../../mod/lostpass.php:106
#: ../../mod/register.php:380 ../../mod/register.php:434
#: ../../mod/regmod.php:54 ../../mod/dfrn_confirm.php:716
-#: ../../include/items.php:2452
+#: ../../include/items.php:2513
msgid "Administrator"
msgstr ""
@@ -1559,7 +1593,7 @@ msgid ""
"Password reset failed."
msgstr ""
-#: ../../mod/lostpass.php:82 ../../boot.php:719
+#: ../../mod/lostpass.php:82 ../../boot.php:723
msgid "Password Reset"
msgstr ""
@@ -1607,7 +1641,7 @@ msgstr ""
msgid "Missing some important data!"
msgstr ""
-#: ../../mod/settings.php:73 ../../mod/settings.php:479 ../../mod/admin.php:62
+#: ../../mod/settings.php:73 ../../mod/settings.php:479 ../../mod/admin.php:75
msgid "Update"
msgstr ""
@@ -1651,13 +1685,14 @@ msgstr ""
msgid " Cannot change to that email."
msgstr ""
-#: ../../mod/settings.php:351 ../../addon/facebook/facebook.php:320
-#: ../../addon/impressum/impressum.php:64 ../../addon/piwik/piwik.php:94
-#: ../../addon/twitter/twitter.php:310
+#: ../../mod/settings.php:351 ../../addon/facebook/facebook.php:321
+#: ../../addon/impressum/impressum.php:64
+#: ../../addon/openstreetmap/openstreetmap.php:80
+#: ../../addon/piwik/piwik.php:105 ../../addon/twitter/twitter.php:350
msgid "Settings updated."
msgstr ""
-#: ../../mod/settings.php:415 ../../include/nav.php:129
+#: ../../mod/settings.php:415 ../../include/nav.php:130
msgid "Account settings"
msgstr ""
@@ -1683,12 +1718,12 @@ msgid "Add application"
msgstr ""
#: ../../mod/settings.php:456 ../../mod/settings.php:482
-#: ../../addon/statusnet/statusnet.php:489
+#: ../../addon/statusnet/statusnet.php:526
msgid "Consumer Key"
msgstr ""
#: ../../mod/settings.php:457 ../../mod/settings.php:483
-#: ../../addon/statusnet/statusnet.php:488
+#: ../../addon/statusnet/statusnet.php:525
msgid "Consumer Secret"
msgstr ""
@@ -1799,7 +1834,7 @@ msgstr ""
msgid "Send public posts to all email contacts:"
msgstr ""
-#: ../../mod/settings.php:648 ../../mod/admin.php:126 ../../mod/admin.php:443
+#: ../../mod/settings.php:648 ../../mod/admin.php:142 ../../mod/admin.php:459
msgid "Normal Account"
msgstr ""
@@ -1807,7 +1842,7 @@ msgstr ""
msgid "This account is a normal personal profile"
msgstr ""
-#: ../../mod/settings.php:652 ../../mod/admin.php:127 ../../mod/admin.php:444
+#: ../../mod/settings.php:652 ../../mod/admin.php:143 ../../mod/admin.php:460
msgid "Soapbox Account"
msgstr ""
@@ -1815,7 +1850,7 @@ msgstr ""
msgid "Automatically approve all connection/friend requests as read-only fans"
msgstr ""
-#: ../../mod/settings.php:656 ../../mod/admin.php:128 ../../mod/admin.php:445
+#: ../../mod/settings.php:656 ../../mod/admin.php:144 ../../mod/admin.php:461
msgid "Community/Celebrity Account"
msgstr ""
@@ -1823,7 +1858,7 @@ msgstr ""
msgid "Automatically approve all connection/friend requests as read-write fans"
msgstr ""
-#: ../../mod/settings.php:660 ../../mod/admin.php:129 ../../mod/admin.php:446
+#: ../../mod/settings.php:660 ../../mod/admin.php:145 ../../mod/admin.php:462
msgid "Automatic Friend Account"
msgstr ""
@@ -1871,159 +1906,159 @@ msgstr ""
msgid "Profile is <strong>not published</strong>."
msgstr ""
-#: ../../mod/settings.php:744 ../../mod/profile_photo.php:206
+#: ../../mod/settings.php:757 ../../mod/profile_photo.php:206
msgid "or"
msgstr ""
-#: ../../mod/settings.php:749
+#: ../../mod/settings.php:762
msgid "Your Identity Address is"
msgstr ""
-#: ../../mod/settings.php:760
+#: ../../mod/settings.php:773
msgid "Automatically expire posts after this many days:"
msgstr ""
-#: ../../mod/settings.php:760
+#: ../../mod/settings.php:773
msgid "If empty, posts will not expire. Expired posts will be deleted"
msgstr ""
-#: ../../mod/settings.php:761
+#: ../../mod/settings.php:774
msgid "Advanced expiration settings"
msgstr ""
-#: ../../mod/settings.php:762
+#: ../../mod/settings.php:775
msgid "Advanced Expiration"
msgstr ""
-#: ../../mod/settings.php:763
+#: ../../mod/settings.php:776
msgid "Expire posts:"
msgstr ""
-#: ../../mod/settings.php:764
+#: ../../mod/settings.php:777
msgid "Expire personal notes:"
msgstr ""
-#: ../../mod/settings.php:765
+#: ../../mod/settings.php:778
msgid "Expire starred posts:"
msgstr ""
-#: ../../mod/settings.php:766
+#: ../../mod/settings.php:779
msgid "Expire photos:"
msgstr ""
-#: ../../mod/settings.php:771
+#: ../../mod/settings.php:784
msgid "Account Settings"
msgstr ""
-#: ../../mod/settings.php:779
+#: ../../mod/settings.php:792
msgid "Password Settings"
msgstr ""
-#: ../../mod/settings.php:780
+#: ../../mod/settings.php:793
msgid "New Password:"
msgstr ""
-#: ../../mod/settings.php:781
+#: ../../mod/settings.php:794
msgid "Confirm:"
msgstr ""
-#: ../../mod/settings.php:781
+#: ../../mod/settings.php:794
msgid "Leave password fields blank unless changing"
msgstr ""
-#: ../../mod/settings.php:785
+#: ../../mod/settings.php:798
msgid "Basic Settings"
msgstr ""
-#: ../../mod/settings.php:786 ../../include/profile_advanced.php:15
+#: ../../mod/settings.php:799 ../../include/profile_advanced.php:15
msgid "Full Name:"
msgstr ""
-#: ../../mod/settings.php:787
+#: ../../mod/settings.php:800
msgid "Email Address:"
msgstr ""
-#: ../../mod/settings.php:788
+#: ../../mod/settings.php:801
msgid "Your Timezone:"
msgstr ""
-#: ../../mod/settings.php:789
+#: ../../mod/settings.php:802
msgid "Default Post Location:"
msgstr ""
-#: ../../mod/settings.php:790
+#: ../../mod/settings.php:803
msgid "Use Browser Location:"
msgstr ""
-#: ../../mod/settings.php:791
+#: ../../mod/settings.php:804
msgid "Display Theme:"
msgstr ""
-#: ../../mod/settings.php:792
+#: ../../mod/settings.php:805
msgid "Update browser every xx seconds"
msgstr ""
-#: ../../mod/settings.php:792
+#: ../../mod/settings.php:805
msgid "Minimum of 10 seconds, no maximum"
msgstr ""
-#: ../../mod/settings.php:794
+#: ../../mod/settings.php:807
msgid "Security and Privacy Settings"
msgstr ""
-#: ../../mod/settings.php:796
+#: ../../mod/settings.php:809
msgid "Maximum Friend Requests/Day:"
msgstr ""
-#: ../../mod/settings.php:796
+#: ../../mod/settings.php:809
msgid "(to prevent spam abuse)"
msgstr ""
-#: ../../mod/settings.php:797
+#: ../../mod/settings.php:810
msgid "Default Post Permissions"
msgstr ""
-#: ../../mod/settings.php:798
+#: ../../mod/settings.php:811
msgid "(click to open/close)"
msgstr ""
-#: ../../mod/settings.php:813
+#: ../../mod/settings.php:826
msgid "Notification Settings"
msgstr ""
-#: ../../mod/settings.php:814
+#: ../../mod/settings.php:827
msgid "Send a notification email when:"
msgstr ""
-#: ../../mod/settings.php:815
+#: ../../mod/settings.php:828
msgid "You receive an introduction"
msgstr ""
-#: ../../mod/settings.php:816
+#: ../../mod/settings.php:829
msgid "Your introductions are confirmed"
msgstr ""
-#: ../../mod/settings.php:817
+#: ../../mod/settings.php:830
msgid "Someone writes on your profile wall"
msgstr ""
-#: ../../mod/settings.php:818
+#: ../../mod/settings.php:831
msgid "Someone writes a followup comment"
msgstr ""
-#: ../../mod/settings.php:819
+#: ../../mod/settings.php:832
msgid "You receive a private message"
msgstr ""
-#: ../../mod/settings.php:820
+#: ../../mod/settings.php:833
msgid "You receive a friend suggestion"
msgstr ""
-#: ../../mod/settings.php:821
+#: ../../mod/settings.php:834
msgid "You are tagged in a post"
msgstr ""
-#: ../../mod/settings.php:824
+#: ../../mod/settings.php:837
msgid "Advanced Page Settings"
msgstr ""
@@ -2089,31 +2124,31 @@ msgstr[1] ""
msgid "Private messages to this group are at risk of public disclosure."
msgstr ""
-#: ../../mod/network.php:304
+#: ../../mod/network.php:300
msgid "No such group"
msgstr ""
-#: ../../mod/network.php:315
+#: ../../mod/network.php:311
msgid "Group is empty"
msgstr ""
-#: ../../mod/network.php:319
+#: ../../mod/network.php:315
msgid "Group: "
msgstr ""
-#: ../../mod/network.php:329
+#: ../../mod/network.php:325
msgid "Contact: "
msgstr ""
-#: ../../mod/network.php:331
+#: ../../mod/network.php:327
msgid "Private messages to this person are at risk of public disclosure."
msgstr ""
-#: ../../mod/network.php:336
+#: ../../mod/network.php:332
msgid "Invalid contact."
msgstr ""
-#: ../../mod/notes.php:44 ../../boot.php:1350
+#: ../../mod/notes.php:44 ../../boot.php:1354
msgid "Personal Notes"
msgstr ""
@@ -2132,13 +2167,16 @@ msgstr ""
#: ../../mod/newmember.php:12
msgid ""
"We would like to offer some tips and links to help make your experience "
-"enjoyable. Click any item to visit the relevant page."
+"enjoyable. Click any item to visit the relevant page. A link to this page "
+"will be visible from your home page for two weeks after your initial "
+"registration and then will quietly disappear."
msgstr ""
#: ../../mod/newmember.php:16
msgid ""
"On your <em>Settings</em> page - change your initial password. Also make a "
-"note of your Identity Address. This will be useful in making friends."
+"note of your Identity Address. This looks just like an email address - and "
+"will be useful in making friends on the free social web."
msgstr ""
#: ../../mod/newmember.php:18
@@ -2162,49 +2200,64 @@ msgid ""
"and we will (optionally) import all your Facebook friends and conversations."
msgstr ""
-#: ../../mod/newmember.php:28
+#: ../../mod/newmember.php:25
+msgid ""
+"<em>If</em> this is your own personal server, installing the Facebook addon "
+"may ease your transition to the free social web."
+msgstr ""
+
+#: ../../mod/newmember.php:30
msgid ""
"Enter your email access information on your Connector Settings page if you "
"wish to import and interact with friends or mailing lists from your email "
"INBOX"
msgstr ""
-#: ../../mod/newmember.php:30
+#: ../../mod/newmember.php:32
msgid ""
"Edit your <strong>default</strong> profile to your liking. Review the "
"settings for hiding your list of friends and hiding the profile from unknown "
"visitors."
msgstr ""
-#: ../../mod/newmember.php:32
+#: ../../mod/newmember.php:34
msgid ""
"Set some public keywords for your default profile which describe your "
"interests. We may be able to find other people with similar interests and "
"suggest friendships."
msgstr ""
-#: ../../mod/newmember.php:34
+#: ../../mod/newmember.php:36
msgid ""
"Your Contacts page is your gateway to managing friendships and connecting "
"with friends on other networks. Typically you enter their address or site "
"URL in the <em>Add New Contact</em> dialog."
msgstr ""
-#: ../../mod/newmember.php:36
+#: ../../mod/newmember.php:38
msgid ""
"The Directory page lets you find other people in this network or other "
"federated sites. Look for a <em>Connect</em> or <em>Follow</em> link on "
"their profile page. Provide your own Identity Address if requested."
msgstr ""
-#: ../../mod/newmember.php:38
+#: ../../mod/newmember.php:40
+msgid ""
+"On the side panel of the Contacts page are several tools to find new "
+"friends. We can match people by interest, look up people by name or "
+"interest, and provide suggestions based on network relationships. On a brand "
+"new site, friend suggestions will usually begin to be populated within 24 "
+"hours."
+msgstr ""
+
+#: ../../mod/newmember.php:42
msgid ""
"Once you have made some friends, organize them into private conversation "
"groups from the sidebar of your Contacts page and then you can interact with "
"each group privately on your Network page."
msgstr ""
-#: ../../mod/newmember.php:40
+#: ../../mod/newmember.php:44
msgid ""
"Our <strong>help</strong> pages may be consulted for detail on other program "
"features and resources."
@@ -2266,10 +2319,6 @@ msgstr ""
msgid "Members"
msgstr ""
-#: ../../mod/group.php:194
-msgid "All Contacts"
-msgstr ""
-
#: ../../mod/profperm.php:25 ../../mod/profperm.php:55
msgid "Invalid profile identifier."
msgstr ""
@@ -2280,7 +2329,7 @@ msgstr ""
#: ../../mod/profperm.php:103 ../../include/profile_advanced.php:7
#: ../../include/profile_advanced.php:76 ../../include/nav.php:48
-#: ../../boot.php:1332
+#: ../../boot.php:1336
msgid "Profile"
msgstr ""
@@ -2292,12 +2341,12 @@ msgstr ""
msgid "All Contacts (with secure profile access)"
msgstr ""
-#: ../../mod/viewcontacts.php:25 ../../include/text.php:578
-msgid "View Contacts"
+#: ../../mod/viewcontacts.php:39
+msgid "No contacts."
msgstr ""
-#: ../../mod/viewcontacts.php:40
-msgid "No contacts."
+#: ../../mod/viewcontacts.php:73 ../../include/text.php:578
+msgid "View Contacts"
msgstr ""
#: ../../mod/register.php:62
@@ -2423,7 +2472,7 @@ msgstr ""
msgid "Your invitation ID: "
msgstr ""
-#: ../../mod/register.php:540 ../../mod/admin.php:297
+#: ../../mod/register.php:540 ../../mod/admin.php:313
msgid "Registration"
msgstr ""
@@ -2446,7 +2495,7 @@ msgstr ""
msgid "Choose a nickname: "
msgstr ""
-#: ../../mod/register.php:554 ../../include/nav.php:77 ../../boot.php:689
+#: ../../mod/register.php:554 ../../include/nav.php:77 ../../boot.php:693
msgid "Register"
msgstr ""
@@ -2455,30 +2504,31 @@ msgid "People Search"
msgstr ""
#: ../../mod/like.php:127 ../../mod/tagger.php:70
-#: ../../addon/facebook/facebook.php:1091
+#: ../../addon/facebook/facebook.php:1092
#: ../../addon/communityhome/communityhome.php:158
#: ../../addon/communityhome/communityhome.php:167
-#: ../../include/diaspora.php:1587 ../../include/conversation.php:26
-#: ../../include/conversation.php:35 ../../include/conversation.php:99
-#: ../../include/conversation.php:108
+#: ../../include/diaspora.php:1600 ../../include/conversation.php:48
+#: ../../include/conversation.php:57 ../../include/conversation.php:121
+#: ../../include/conversation.php:130
msgid "status"
msgstr ""
-#: ../../mod/like.php:144 ../../addon/facebook/facebook.php:1095
+#: ../../mod/like.php:144 ../../addon/facebook/facebook.php:1096
#: ../../addon/communityhome/communityhome.php:172
-#: ../../include/diaspora.php:1603 ../../include/conversation.php:43
+#: ../../include/diaspora.php:1616 ../../include/conversation.php:65
#, php-format
msgid "%1$s likes %2$s's %3$s"
msgstr ""
-#: ../../mod/like.php:146 ../../include/conversation.php:46
+#: ../../mod/like.php:146 ../../include/conversation.php:68
#, php-format
msgid "%1$s doesn't like %2$s's %3$s"
msgstr ""
-#: ../../mod/notice.php:15 ../../mod/viewsrc.php:15 ../../mod/admin.php:111
-#: ../../mod/admin.php:502 ../../mod/display.php:28 ../../mod/display.php:116
-#: ../../mod/viewd.php:14 ../../include/items.php:2819
+#: ../../mod/notice.php:15 ../../mod/viewsrc.php:15 ../../mod/admin.php:127
+#: ../../mod/admin.php:518 ../../mod/admin.php:694 ../../mod/display.php:29
+#: ../../mod/display.php:134 ../../mod/viewd.php:14
+#: ../../include/items.php:2880
msgid "Item not found."
msgstr ""
@@ -2499,42 +2549,42 @@ msgstr ""
msgid "Please login."
msgstr ""
-#: ../../mod/item.php:88
+#: ../../mod/item.php:89
msgid "Unable to locate original post."
msgstr ""
-#: ../../mod/item.php:248
+#: ../../mod/item.php:249
msgid "Empty post discarded."
msgstr ""
-#: ../../mod/item.php:350 ../../mod/wall_upload.php:81
+#: ../../mod/item.php:351 ../../mod/wall_upload.php:81
#: ../../mod/wall_upload.php:90 ../../mod/wall_upload.php:97
#: ../../include/message.php:143
msgid "Wall Photos"
msgstr ""
-#: ../../mod/item.php:827
+#: ../../mod/item.php:830
msgid "System error. Post not saved."
msgstr ""
-#: ../../mod/item.php:852
+#: ../../mod/item.php:855
#, php-format
msgid ""
"This message was sent to you by %s, a member of the Friendica social network."
msgstr ""
-#: ../../mod/item.php:854
+#: ../../mod/item.php:857
#, php-format
msgid "You may visit them online at %s"
msgstr ""
-#: ../../mod/item.php:855
+#: ../../mod/item.php:858
msgid ""
"Please contact the sender by replying to this post if you do not wish to "
"receive these messages."
msgstr ""
-#: ../../mod/item.php:857
+#: ../../mod/item.php:860
#, php-format
msgid "%s posted an update."
msgstr ""
@@ -2658,7 +2708,7 @@ msgstr ""
msgid "Conversation removed."
msgstr ""
-#: ../../mod/message.php:137 ../../include/conversation.php:843
+#: ../../mod/message.php:137 ../../include/conversation.php:868
msgid "Please enter a link URL:"
msgstr ""
@@ -2712,348 +2762,357 @@ msgstr ""
msgid "No friends to display."
msgstr ""
-#: ../../mod/admin.php:59 ../../mod/admin.php:295
+#: ../../mod/admin.php:71 ../../mod/admin.php:311
msgid "Site"
msgstr ""
-#: ../../mod/admin.php:60 ../../mod/admin.php:460 ../../mod/admin.php:472
+#: ../../mod/admin.php:72 ../../mod/admin.php:476 ../../mod/admin.php:488
msgid "Users"
msgstr ""
-#: ../../mod/admin.php:61 ../../mod/admin.php:549 ../../mod/admin.php:586
+#: ../../mod/admin.php:73 ../../mod/admin.php:565 ../../mod/admin.php:602
msgid "Plugins"
msgstr ""
-#: ../../mod/admin.php:76 ../../mod/admin.php:651
+#: ../../mod/admin.php:74 ../../mod/admin.php:736 ../../mod/admin.php:768
+msgid "Themes"
+msgstr ""
+
+#: ../../mod/admin.php:89 ../../mod/admin.php:846
msgid "Logs"
msgstr ""
-#: ../../mod/admin.php:81
+#: ../../mod/admin.php:94
msgid "User registrations waiting for confirmation"
msgstr ""
-#: ../../mod/admin.php:144 ../../mod/admin.php:294 ../../mod/admin.php:459
-#: ../../mod/admin.php:548 ../../mod/admin.php:585 ../../mod/admin.php:650
+#: ../../mod/admin.php:160 ../../mod/admin.php:310 ../../mod/admin.php:475
+#: ../../mod/admin.php:564 ../../mod/admin.php:601 ../../mod/admin.php:735
+#: ../../mod/admin.php:767 ../../mod/admin.php:845
msgid "Administration"
msgstr ""
-#: ../../mod/admin.php:145
+#: ../../mod/admin.php:161
msgid "Summary"
msgstr ""
-#: ../../mod/admin.php:146
+#: ../../mod/admin.php:162
msgid "Registered users"
msgstr ""
-#: ../../mod/admin.php:148
+#: ../../mod/admin.php:164
msgid "Pending registrations"
msgstr ""
-#: ../../mod/admin.php:149
+#: ../../mod/admin.php:165
msgid "Version"
msgstr ""
-#: ../../mod/admin.php:151
+#: ../../mod/admin.php:167
msgid "Active plugins"
msgstr ""
-#: ../../mod/admin.php:243
+#: ../../mod/admin.php:259
msgid "Site settings updated."
msgstr ""
-#: ../../mod/admin.php:287
+#: ../../mod/admin.php:303
msgid "Closed"
msgstr ""
-#: ../../mod/admin.php:288
+#: ../../mod/admin.php:304
msgid "Requires approval"
msgstr ""
-#: ../../mod/admin.php:289
+#: ../../mod/admin.php:305
msgid "Open"
msgstr ""
-#: ../../mod/admin.php:298
+#: ../../mod/admin.php:314
msgid "File upload"
msgstr ""
-#: ../../mod/admin.php:299
+#: ../../mod/admin.php:315
msgid "Policies"
msgstr ""
-#: ../../mod/admin.php:300
+#: ../../mod/admin.php:316
msgid "Advanced"
msgstr ""
-#: ../../mod/admin.php:304 ../../addon/statusnet/statusnet.php:486
+#: ../../mod/admin.php:320 ../../addon/statusnet/statusnet.php:523
msgid "Site name"
msgstr ""
-#: ../../mod/admin.php:305
+#: ../../mod/admin.php:321
msgid "Banner/Logo"
msgstr ""
-#: ../../mod/admin.php:306
+#: ../../mod/admin.php:322
msgid "System language"
msgstr ""
-#: ../../mod/admin.php:307
+#: ../../mod/admin.php:323
msgid "System theme"
msgstr ""
-#: ../../mod/admin.php:309
+#: ../../mod/admin.php:325
msgid "Maximum image size"
msgstr ""
-#: ../../mod/admin.php:311
+#: ../../mod/admin.php:327
msgid "Register policy"
msgstr ""
-#: ../../mod/admin.php:312
+#: ../../mod/admin.php:328
msgid "Register text"
msgstr ""
-#: ../../mod/admin.php:313
+#: ../../mod/admin.php:329
msgid "Accounts abandoned after x days"
msgstr ""
-#: ../../mod/admin.php:313
+#: ../../mod/admin.php:329
msgid ""
"Will not waste system resources polling external sites for abandonded "
"accounts. Enter 0 for no time limit."
msgstr ""
-#: ../../mod/admin.php:314
+#: ../../mod/admin.php:330
msgid "Allowed friend domains"
msgstr ""
-#: ../../mod/admin.php:315
+#: ../../mod/admin.php:331
msgid "Allowed email domains"
msgstr ""
-#: ../../mod/admin.php:316
+#: ../../mod/admin.php:332
msgid "Block public"
msgstr ""
-#: ../../mod/admin.php:317
+#: ../../mod/admin.php:333
msgid "Force publish"
msgstr ""
-#: ../../mod/admin.php:318
+#: ../../mod/admin.php:334
msgid "Global directory update URL"
msgstr ""
-#: ../../mod/admin.php:320
+#: ../../mod/admin.php:336
msgid "Block multiple registrations"
msgstr ""
-#: ../../mod/admin.php:321
+#: ../../mod/admin.php:337
msgid "OpenID support"
msgstr ""
-#: ../../mod/admin.php:322
+#: ../../mod/admin.php:338
msgid "Gravatar support"
msgstr ""
-#: ../../mod/admin.php:323
+#: ../../mod/admin.php:339
msgid "Fullname check"
msgstr ""
-#: ../../mod/admin.php:324
+#: ../../mod/admin.php:340
msgid "UTF-8 Regular expressions"
msgstr ""
-#: ../../mod/admin.php:325
+#: ../../mod/admin.php:341
msgid "Show Community Page"
msgstr ""
-#: ../../mod/admin.php:326
+#: ../../mod/admin.php:342
msgid "Enable OStatus support"
msgstr ""
-#: ../../mod/admin.php:327
+#: ../../mod/admin.php:343
msgid "Enable Diaspora support"
msgstr ""
-#: ../../mod/admin.php:328
+#: ../../mod/admin.php:344
msgid "Only allow Friendica contacts"
msgstr ""
-#: ../../mod/admin.php:329
+#: ../../mod/admin.php:345
msgid "Verify SSL"
msgstr ""
-#: ../../mod/admin.php:330
+#: ../../mod/admin.php:346
msgid "Proxy user"
msgstr ""
-#: ../../mod/admin.php:331
+#: ../../mod/admin.php:347
msgid "Proxy URL"
msgstr ""
-#: ../../mod/admin.php:332
+#: ../../mod/admin.php:348
msgid "Network timeout"
msgstr ""
-#: ../../mod/admin.php:353
+#: ../../mod/admin.php:369
#, php-format
msgid "%s user blocked"
msgid_plural "%s users blocked/unblocked"
msgstr[0] ""
msgstr[1] ""
-#: ../../mod/admin.php:360
+#: ../../mod/admin.php:376
#, php-format
msgid "%s user deleted"
msgid_plural "%s users deleted"
msgstr[0] ""
msgstr[1] ""
-#: ../../mod/admin.php:394
+#: ../../mod/admin.php:410
#, php-format
msgid "User '%s' deleted"
msgstr ""
-#: ../../mod/admin.php:401
+#: ../../mod/admin.php:417
#, php-format
msgid "User '%s' unblocked"
msgstr ""
-#: ../../mod/admin.php:401
+#: ../../mod/admin.php:417
#, php-format
msgid "User '%s' blocked"
msgstr ""
-#: ../../mod/admin.php:462
+#: ../../mod/admin.php:478
msgid "select all"
msgstr ""
-#: ../../mod/admin.php:463
+#: ../../mod/admin.php:479
msgid "User registrations waiting for confirm"
msgstr ""
-#: ../../mod/admin.php:464
+#: ../../mod/admin.php:480
msgid "Request date"
msgstr ""
-#: ../../mod/admin.php:464 ../../mod/admin.php:473
+#: ../../mod/admin.php:480 ../../mod/admin.php:489
#: ../../include/contact_selectors.php:79
msgid "Email"
msgstr ""
-#: ../../mod/admin.php:465
+#: ../../mod/admin.php:481
msgid "No registrations."
msgstr ""
-#: ../../mod/admin.php:467
+#: ../../mod/admin.php:483
msgid "Deny"
msgstr ""
-#: ../../mod/admin.php:473
+#: ../../mod/admin.php:489
msgid "Register date"
msgstr ""
-#: ../../mod/admin.php:473
+#: ../../mod/admin.php:489
msgid "Last login"
msgstr ""
-#: ../../mod/admin.php:473
+#: ../../mod/admin.php:489
msgid "Last item"
msgstr ""
-#: ../../mod/admin.php:473
+#: ../../mod/admin.php:489
msgid "Account"
msgstr ""
-#: ../../mod/admin.php:475
+#: ../../mod/admin.php:491
msgid ""
"Selected users will be deleted!\\n\\nEverything these users had posted on "
"this site will be permanently deleted!\\n\\nAre you sure?"
msgstr ""
-#: ../../mod/admin.php:476
+#: ../../mod/admin.php:492
msgid ""
"The user {0} will be deleted!\\n\\nEverything this user has posted on this "
"site will be permanently deleted!\\n\\nAre you sure?"
msgstr ""
-#: ../../mod/admin.php:512
+#: ../../mod/admin.php:528
#, php-format
msgid "Plugin %s disabled."
msgstr ""
-#: ../../mod/admin.php:516
+#: ../../mod/admin.php:532
#, php-format
msgid "Plugin %s enabled."
msgstr ""
-#: ../../mod/admin.php:526
+#: ../../mod/admin.php:542 ../../mod/admin.php:718
msgid "Disable"
msgstr ""
-#: ../../mod/admin.php:528
+#: ../../mod/admin.php:544 ../../mod/admin.php:720
msgid "Enable"
msgstr ""
-#: ../../mod/admin.php:550
+#: ../../mod/admin.php:566 ../../mod/admin.php:737
msgid "Toggle"
msgstr ""
-#: ../../mod/admin.php:551 ../../include/nav.php:129
+#: ../../mod/admin.php:567 ../../mod/admin.php:738 ../../include/nav.php:130
msgid "Settings"
msgstr ""
-#: ../../mod/admin.php:613
+#: ../../mod/admin.php:683
+msgid "No themes found."
+msgstr ""
+
+#: ../../mod/admin.php:795
msgid "Log settings updated."
msgstr ""
-#: ../../mod/admin.php:653
+#: ../../mod/admin.php:848
msgid "Clear"
msgstr ""
-#: ../../mod/admin.php:659
+#: ../../mod/admin.php:854
msgid "Debugging"
msgstr ""
-#: ../../mod/admin.php:660
+#: ../../mod/admin.php:855
msgid "Log file"
msgstr ""
-#: ../../mod/admin.php:660
+#: ../../mod/admin.php:855
msgid ""
"Must be writable by web server. Relative to your Friendica top-level "
"directory."
msgstr ""
-#: ../../mod/admin.php:661
+#: ../../mod/admin.php:856
msgid "Log level"
msgstr ""
-#: ../../mod/admin.php:702
+#: ../../mod/admin.php:897
msgid "Close"
msgstr ""
-#: ../../mod/admin.php:708
+#: ../../mod/admin.php:903
msgid "FTP Host"
msgstr ""
-#: ../../mod/admin.php:709
+#: ../../mod/admin.php:904
msgid "FTP Path"
msgstr ""
-#: ../../mod/admin.php:710
+#: ../../mod/admin.php:905
msgid "FTP User"
msgstr ""
-#: ../../mod/admin.php:711
+#: ../../mod/admin.php:906
msgid "FTP Password"
msgstr ""
-#: ../../mod/profile.php:15 ../../boot.php:841
+#: ../../mod/profile.php:15 ../../boot.php:845
msgid "Requested profile is not available."
msgstr ""
-#: ../../mod/profile.php:111 ../../mod/display.php:66
+#: ../../mod/profile.php:111 ../../mod/display.php:67
msgid "Access to this profile has been restricted."
msgstr ""
@@ -3061,48 +3120,48 @@ msgstr ""
msgid "Tips for New Members"
msgstr ""
-#: ../../mod/ping.php:148
+#: ../../mod/ping.php:146
msgid "{0} wants to be your friend"
msgstr ""
-#: ../../mod/ping.php:153
+#: ../../mod/ping.php:151
msgid "{0} sent you a message"
msgstr ""
-#: ../../mod/ping.php:158
+#: ../../mod/ping.php:156
msgid "{0} requested registration"
msgstr ""
-#: ../../mod/ping.php:164
+#: ../../mod/ping.php:162
#, php-format
msgid "{0} commented %s's post"
msgstr ""
-#: ../../mod/ping.php:169
+#: ../../mod/ping.php:167
#, php-format
msgid "{0} liked %s's post"
msgstr ""
-#: ../../mod/ping.php:174
+#: ../../mod/ping.php:172
#, php-format
msgid "{0} disliked %s's post"
msgstr ""
-#: ../../mod/ping.php:179
+#: ../../mod/ping.php:177
#, php-format
msgid "{0} is now friends with %s"
msgstr ""
-#: ../../mod/ping.php:184
+#: ../../mod/ping.php:182
msgid "{0} posted"
msgstr ""
-#: ../../mod/ping.php:189
+#: ../../mod/ping.php:187
#, php-format
msgid "{0} tagged %s's post with #%s"
msgstr ""
-#: ../../mod/ping.php:195
+#: ../../mod/ping.php:193
msgid "{0} mentioned you in a post"
msgstr ""
@@ -3120,39 +3179,39 @@ msgid ""
"This site is not configured to allow communications with other networks."
msgstr ""
-#: ../../mod/follow.php:48 ../../mod/follow.php:58
+#: ../../mod/follow.php:48 ../../mod/follow.php:63
msgid "No compatible communication protocols or feeds were discovered."
msgstr ""
-#: ../../mod/follow.php:56
+#: ../../mod/follow.php:61
msgid "The profile address specified does not provide adequate information."
msgstr ""
-#: ../../mod/follow.php:60
+#: ../../mod/follow.php:65
msgid "An author or name was not found."
msgstr ""
-#: ../../mod/follow.php:62
+#: ../../mod/follow.php:67
msgid "No browser URL could be matched to this address."
msgstr ""
-#: ../../mod/follow.php:69
+#: ../../mod/follow.php:74
msgid ""
"The profile address specified belongs to a network which has been disabled "
"on this site."
msgstr ""
-#: ../../mod/follow.php:74
+#: ../../mod/follow.php:79
msgid ""
"Limited profile. This person will be unable to receive direct/personal "
"notifications from you."
msgstr ""
-#: ../../mod/follow.php:144
+#: ../../mod/follow.php:149
msgid "Unable to retrieve contact information."
msgstr ""
-#: ../../mod/follow.php:190
+#: ../../mod/follow.php:195
msgid "following"
msgstr ""
@@ -3164,7 +3223,7 @@ msgstr ""
msgid "No friends in common."
msgstr ""
-#: ../../mod/display.php:109
+#: ../../mod/display.php:127
msgid "Item has been removed."
msgstr ""
@@ -3368,7 +3427,7 @@ msgid ""
"be visible to anybody using the internet."
msgstr ""
-#: ../../mod/profiles.php:426 ../../mod/directory.php:122
+#: ../../mod/profiles.php:426 ../../mod/directory.php:124
msgid "Age: "
msgstr ""
@@ -3376,27 +3435,27 @@ msgstr ""
msgid "Edit/Manage Profiles"
msgstr ""
-#: ../../mod/profiles.php:462 ../../boot.php:942
+#: ../../mod/profiles.php:462 ../../boot.php:946
msgid "Change profile photo"
msgstr ""
-#: ../../mod/profiles.php:463 ../../boot.php:943
+#: ../../mod/profiles.php:463 ../../boot.php:947
msgid "Create New Profile"
msgstr ""
-#: ../../mod/profiles.php:473 ../../boot.php:953
+#: ../../mod/profiles.php:473 ../../boot.php:957
msgid "Profile Image"
msgstr ""
-#: ../../mod/profiles.php:475 ../../boot.php:956
+#: ../../mod/profiles.php:475 ../../boot.php:960
msgid "visible to everybody"
msgstr ""
-#: ../../mod/profiles.php:476 ../../boot.php:957
+#: ../../mod/profiles.php:476 ../../boot.php:961
msgid "Edit visibility"
msgstr ""
-#: ../../mod/tagger.php:103 ../../include/conversation.php:116
+#: ../../mod/tagger.php:103 ../../include/conversation.php:138
#, php-format
msgid "%1$s tagged %2$s's %3$s with %4$s"
msgstr ""
@@ -3450,31 +3509,31 @@ msgstr ""
msgid "Ignore/Hide"
msgstr ""
-#: ../../mod/directory.php:49
+#: ../../mod/directory.php:51
msgid "Global Directory"
msgstr ""
-#: ../../mod/directory.php:55
+#: ../../mod/directory.php:57
msgid "Normal site view"
msgstr ""
-#: ../../mod/directory.php:57
+#: ../../mod/directory.php:59
msgid "Admin - View all site entries"
msgstr ""
-#: ../../mod/directory.php:63
+#: ../../mod/directory.php:65
msgid "Find on this site"
msgstr ""
-#: ../../mod/directory.php:66
+#: ../../mod/directory.php:68
msgid "Site Directory"
msgstr ""
-#: ../../mod/directory.php:125
+#: ../../mod/directory.php:127
msgid "Gender: "
msgstr ""
-#: ../../mod/directory.php:151
+#: ../../mod/directory.php:153
msgid "No entries (some entries may be hidden)."
msgstr ""
@@ -3560,7 +3619,7 @@ msgid "Unable to set contact photo."
msgstr ""
#: ../../mod/dfrn_confirm.php:473 ../../include/diaspora.php:495
-#: ../../include/conversation.php:79
+#: ../../include/conversation.php:101
#, php-format
msgid "%1$s is now friends with %2$s"
msgstr ""
@@ -3606,71 +3665,71 @@ msgstr ""
msgid "Connection accepted at %s"
msgstr ""
-#: ../../addon/facebook/facebook.php:337
+#: ../../addon/facebook/facebook.php:338
msgid "Facebook disabled"
msgstr ""
-#: ../../addon/facebook/facebook.php:342
+#: ../../addon/facebook/facebook.php:343
msgid "Updating contacts"
msgstr ""
-#: ../../addon/facebook/facebook.php:351
+#: ../../addon/facebook/facebook.php:352
msgid "Facebook API key is missing."
msgstr ""
-#: ../../addon/facebook/facebook.php:358
+#: ../../addon/facebook/facebook.php:359
msgid "Facebook Connect"
msgstr ""
-#: ../../addon/facebook/facebook.php:364
+#: ../../addon/facebook/facebook.php:365
msgid "Install Facebook connector for this account."
msgstr ""
-#: ../../addon/facebook/facebook.php:371
+#: ../../addon/facebook/facebook.php:372
msgid "Remove Facebook connector"
msgstr ""
-#: ../../addon/facebook/facebook.php:376
+#: ../../addon/facebook/facebook.php:377
msgid ""
"Re-authenticate [This is necessary whenever your Facebook password is "
"changed.]"
msgstr ""
-#: ../../addon/facebook/facebook.php:383
+#: ../../addon/facebook/facebook.php:384
msgid "Post to Facebook by default"
msgstr ""
-#: ../../addon/facebook/facebook.php:387
+#: ../../addon/facebook/facebook.php:388
msgid "Link all your Facebook friends and conversations on this website"
msgstr ""
-#: ../../addon/facebook/facebook.php:389
+#: ../../addon/facebook/facebook.php:390
msgid ""
"Facebook conversations consist of your <em>profile wall</em> and your friend "
"<em>stream</em>."
msgstr ""
-#: ../../addon/facebook/facebook.php:390
+#: ../../addon/facebook/facebook.php:391
msgid "On this website, your Facebook friend stream is only visible to you."
msgstr ""
-#: ../../addon/facebook/facebook.php:391
+#: ../../addon/facebook/facebook.php:392
msgid ""
"The following settings determine the privacy of your Facebook profile wall "
"on this website."
msgstr ""
-#: ../../addon/facebook/facebook.php:395
+#: ../../addon/facebook/facebook.php:396
msgid ""
"On this website your Facebook profile wall conversations will only be "
"visible to you"
msgstr ""
-#: ../../addon/facebook/facebook.php:400
+#: ../../addon/facebook/facebook.php:401
msgid "Do not import your Facebook profile wall conversations"
msgstr ""
-#: ../../addon/facebook/facebook.php:402
+#: ../../addon/facebook/facebook.php:403
msgid ""
"If you choose to link conversations and leave both of these boxes unchecked, "
"your Facebook profile wall will be merged with your profile wall on this "
@@ -3678,43 +3737,43 @@ msgid ""
"who may see the conversations."
msgstr ""
-#: ../../addon/facebook/facebook.php:407
+#: ../../addon/facebook/facebook.php:408
msgid "Comma separated applications to ignore"
msgstr ""
-#: ../../addon/facebook/facebook.php:475
+#: ../../addon/facebook/facebook.php:476
#: ../../include/contact_selectors.php:81
msgid "Facebook"
msgstr ""
-#: ../../addon/facebook/facebook.php:476
+#: ../../addon/facebook/facebook.php:477
msgid "Facebook Connector Settings"
msgstr ""
-#: ../../addon/facebook/facebook.php:490
+#: ../../addon/facebook/facebook.php:491
msgid "Post to Facebook"
msgstr ""
-#: ../../addon/facebook/facebook.php:581
+#: ../../addon/facebook/facebook.php:582
msgid ""
"Post to Facebook cancelled because of multi-network access permission "
"conflict."
msgstr ""
-#: ../../addon/facebook/facebook.php:650
+#: ../../addon/facebook/facebook.php:651
msgid "Image: "
msgstr ""
-#: ../../addon/facebook/facebook.php:727
+#: ../../addon/facebook/facebook.php:728
msgid "View on Friendica"
msgstr ""
-#: ../../addon/facebook/facebook.php:751
+#: ../../addon/facebook/facebook.php:752
msgid "Facebook post failed. Queued for retry."
msgstr ""
-#: ../../addon/facebook/facebook.php:876 ../../addon/facebook/facebook.php:885
-#: ../../include/bb2diaspora.php:113
+#: ../../addon/facebook/facebook.php:877 ../../addon/facebook/facebook.php:886
+#: ../../include/bb2diaspora.php:132
msgid "link"
msgstr ""
@@ -3799,7 +3858,7 @@ msgstr ""
#: ../../addon/communityhome/communityhome.php:28
#: ../../addon/communityhome/communityhome.php:34 ../../include/nav.php:62
-#: ../../boot.php:706
+#: ../../boot.php:710
msgid "Login"
msgstr ""
@@ -3824,7 +3883,7 @@ msgid "Last likes"
msgstr ""
#: ../../addon/communityhome/communityhome.php:155
-#: ../../include/conversation.php:23 ../../include/conversation.php:96
+#: ../../include/conversation.php:45 ../../include/conversation.php:118
msgid "event"
msgstr ""
@@ -3979,19 +4038,19 @@ msgstr ""
msgid "Failed"
msgstr ""
-#: ../../addon/js_upload/js_upload.php:294
+#: ../../addon/js_upload/js_upload.php:297
msgid "No files were uploaded."
msgstr ""
-#: ../../addon/js_upload/js_upload.php:300
+#: ../../addon/js_upload/js_upload.php:303
msgid "Uploaded file is empty"
msgstr ""
-#: ../../addon/js_upload/js_upload.php:323
+#: ../../addon/js_upload/js_upload.php:326
msgid "File has an invalid extension, it should be one of "
msgstr ""
-#: ../../addon/js_upload/js_upload.php:334
+#: ../../addon/js_upload/js_upload.php:337
msgid "Upload was cancelled, or server error encountered"
msgstr ""
@@ -4075,6 +4134,48 @@ msgstr ""
msgid "blockem settings updated"
msgstr ""
+#: ../../addon/qcomment/qcomment.php:51
+msgid ":-)"
+msgstr ""
+
+#: ../../addon/qcomment/qcomment.php:51
+msgid ":-("
+msgstr ""
+
+#: ../../addon/qcomment/qcomment.php:51
+msgid "lol"
+msgstr ""
+
+#: ../../addon/qcomment/qcomment.php:54
+msgid "Quick Comment Settings"
+msgstr ""
+
+#: ../../addon/qcomment/qcomment.php:56
+msgid "Enter quick comments, one per line"
+msgstr ""
+
+#: ../../addon/qcomment/qcomment.php:74
+msgid "Quick Comment settings saved."
+msgstr ""
+
+#: ../../addon/openstreetmap/openstreetmap.php:71
+msgid "Tile Server URL"
+msgstr ""
+
+#: ../../addon/openstreetmap/openstreetmap.php:71
+msgid ""
+"A list of <a href=\"http://wiki.openstreetmap.org/wiki/TMS\" target=\"_blank"
+"\">public tile servers</a>"
+msgstr ""
+
+#: ../../addon/openstreetmap/openstreetmap.php:72
+msgid "Default zoom"
+msgstr ""
+
+#: ../../addon/openstreetmap/openstreetmap.php:72
+msgid "The default zoom level. (1:world, 18:highest)"
+msgstr ""
+
#: ../../addon/editplain/editplain.php:46
msgid "Editplain settings updated."
msgstr ""
@@ -4099,44 +4200,44 @@ msgstr ""
msgid "View Source"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:140
+#: ../../addon/statusnet/statusnet.php:134
msgid "Post to StatusNet"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:182
+#: ../../addon/statusnet/statusnet.php:175
msgid ""
"Please contact your site administrator.<br />The provided API URL is not "
"valid."
msgstr ""
-#: ../../addon/statusnet/statusnet.php:210
+#: ../../addon/statusnet/statusnet.php:203
msgid "We could not contact the StatusNet API with the Path you entered."
msgstr ""
-#: ../../addon/statusnet/statusnet.php:236
+#: ../../addon/statusnet/statusnet.php:229
msgid "StatusNet settings updated."
msgstr ""
-#: ../../addon/statusnet/statusnet.php:259
+#: ../../addon/statusnet/statusnet.php:252
msgid "StatusNet Posting Settings"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:273
+#: ../../addon/statusnet/statusnet.php:266
msgid "Globally Available StatusNet OAuthKeys"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:274
+#: ../../addon/statusnet/statusnet.php:267
msgid ""
"There are preconfigured OAuth key pairs for some StatusNet servers "
"available. If you are useing one of them, please use these credentials. If "
"not feel free to connect to any other StatusNet instance (see below)."
msgstr ""
-#: ../../addon/statusnet/statusnet.php:282
+#: ../../addon/statusnet/statusnet.php:275
msgid "Provide your own OAuth Credentials"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:283
+#: ../../addon/statusnet/statusnet.php:276
msgid ""
"No consumer key pair for StatusNet found. Register your Friendica Account as "
"an desktop client on your StatusNet account, copy the consumer key pair here "
@@ -4145,19 +4246,19 @@ msgid ""
"installation at your favorited StatusNet installation."
msgstr ""
-#: ../../addon/statusnet/statusnet.php:285
+#: ../../addon/statusnet/statusnet.php:278
msgid "OAuth Consumer Key"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:288
+#: ../../addon/statusnet/statusnet.php:281
msgid "OAuth Consumer Secret"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:291
+#: ../../addon/statusnet/statusnet.php:284
msgid "Base API Path (remember the trailing /)"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:312
+#: ../../addon/statusnet/statusnet.php:305
msgid ""
"To connect to your StatusNet account click the button below to get a "
"security code from StatusNet which you have to copy into the input box below "
@@ -4165,50 +4266,58 @@ msgid ""
"to StatusNet."
msgstr ""
-#: ../../addon/statusnet/statusnet.php:313
+#: ../../addon/statusnet/statusnet.php:306
msgid "Log in with StatusNet"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:315
+#: ../../addon/statusnet/statusnet.php:308
msgid "Copy the security code from StatusNet here"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:321
+#: ../../addon/statusnet/statusnet.php:314
msgid "Cancel Connection Process"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:323
+#: ../../addon/statusnet/statusnet.php:316
msgid "Current StatusNet API is"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:324
+#: ../../addon/statusnet/statusnet.php:317
msgid "Cancel StatusNet Connection"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:335 ../../addon/twitter/twitter.php:189
+#: ../../addon/statusnet/statusnet.php:328 ../../addon/twitter/twitter.php:184
msgid "Currently connected to: "
msgstr ""
-#: ../../addon/statusnet/statusnet.php:336
+#: ../../addon/statusnet/statusnet.php:329
msgid ""
"If enabled all your <strong>public</strong> postings can be posted to the "
"associated StatusNet account. You can choose to do so by default (here) or "
"for every posting separately in the posting options when writing the entry."
msgstr ""
-#: ../../addon/statusnet/statusnet.php:338
+#: ../../addon/statusnet/statusnet.php:331
+msgid ""
+"<strong>Note</strong>: Due your privacy settings (<em>Hide your profile "
+"details from unknown viewers?</em>) the link potentially included in public "
+"postings relayed to StatusNet will lead the visitor to a blank page "
+"informing the visitor that the access to your profile has been restricted."
+msgstr ""
+
+#: ../../addon/statusnet/statusnet.php:334
msgid "Allow posting to StatusNet"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:341
+#: ../../addon/statusnet/statusnet.php:337
msgid "Send public postings to StatusNet by default"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:346 ../../addon/twitter/twitter.php:200
+#: ../../addon/statusnet/statusnet.php:342 ../../addon/twitter/twitter.php:198
msgid "Clear OAuth configuration"
msgstr ""
-#: ../../addon/statusnet/statusnet.php:487
+#: ../../addon/statusnet/statusnet.php:524
msgid "API URL"
msgstr ""
@@ -4276,13 +4385,33 @@ msgstr ""
msgid "Post to WordPress by default"
msgstr ""
-#: ../../addon/piwik/piwik.php:70
+#: ../../addon/showmore/showmore.php:38
+msgid "\"Show more\" Settings"
+msgstr ""
+
+#: ../../addon/showmore/showmore.php:41
+msgid "Enable Show More"
+msgstr ""
+
+#: ../../addon/showmore/showmore.php:44
+msgid "Cutting posts after how much characters"
+msgstr ""
+
+#: ../../addon/showmore/showmore.php:64
+msgid "Show More Settings saved."
+msgstr ""
+
+#: ../../addon/showmore/showmore.php:86
+msgid "Show More"
+msgstr ""
+
+#: ../../addon/piwik/piwik.php:79
msgid ""
"This website is tracked using the <a href='http://www.piwik.org'>Piwik</a> "
"analytics tool."
msgstr ""
-#: ../../addon/piwik/piwik.php:73
+#: ../../addon/piwik/piwik.php:82
#, php-format
msgid ""
"If you do not want that your visits are logged this way you <a href='%s'>can "
@@ -4290,37 +4419,47 @@ msgid ""
"(opt-out)."
msgstr ""
-#: ../../addon/piwik/piwik.php:82
+#: ../../addon/piwik/piwik.php:90
msgid "Piwik Base URL"
msgstr ""
-#: ../../addon/piwik/piwik.php:83
+#: ../../addon/piwik/piwik.php:90
+msgid ""
+"Absolute path to your Piwik installation. (without protocol (http/s), with "
+"trailing slash)"
+msgstr ""
+
+#: ../../addon/piwik/piwik.php:91
msgid "Site ID"
msgstr ""
-#: ../../addon/piwik/piwik.php:84
+#: ../../addon/piwik/piwik.php:92
msgid "Show opt-out cookie link?"
msgstr ""
-#: ../../addon/twitter/twitter.php:78
+#: ../../addon/piwik/piwik.php:93
+msgid "Asynchronous tracking"
+msgstr ""
+
+#: ../../addon/twitter/twitter.php:73
msgid "Post to Twitter"
msgstr ""
-#: ../../addon/twitter/twitter.php:124
+#: ../../addon/twitter/twitter.php:119
msgid "Twitter settings updated."
msgstr ""
-#: ../../addon/twitter/twitter.php:146
+#: ../../addon/twitter/twitter.php:141
msgid "Twitter Posting Settings"
msgstr ""
-#: ../../addon/twitter/twitter.php:153
+#: ../../addon/twitter/twitter.php:148
msgid ""
"No consumer key pair for Twitter found. Please contact your site "
"administrator."
msgstr ""
-#: ../../addon/twitter/twitter.php:172
+#: ../../addon/twitter/twitter.php:167
msgid ""
"At this Friendica instance the Twitter plugin was enabled but you have not "
"yet connected your account to your Twitter account. To do so click the "
@@ -4329,34 +4468,42 @@ msgid ""
"be posted to Twitter."
msgstr ""
-#: ../../addon/twitter/twitter.php:173
+#: ../../addon/twitter/twitter.php:168
msgid "Log in with Twitter"
msgstr ""
-#: ../../addon/twitter/twitter.php:175
+#: ../../addon/twitter/twitter.php:170
msgid "Copy the PIN from Twitter here"
msgstr ""
-#: ../../addon/twitter/twitter.php:190
+#: ../../addon/twitter/twitter.php:185
msgid ""
"If enabled all your <strong>public</strong> postings can be posted to the "
"associated Twitter account. You can choose to do so by default (here) or for "
"every posting separately in the posting options when writing the entry."
msgstr ""
-#: ../../addon/twitter/twitter.php:192
+#: ../../addon/twitter/twitter.php:187
+msgid ""
+"<strong>Note</strong>: Due your privacy settings (<em>Hide your profile "
+"details from unknown viewers?</em>) the link potentially included in public "
+"postings relayed to Twitter will lead the visitor to a blank page informing "
+"the visitor that the access to your profile has been restricted."
+msgstr ""
+
+#: ../../addon/twitter/twitter.php:190
msgid "Allow posting to Twitter"
msgstr ""
-#: ../../addon/twitter/twitter.php:195
+#: ../../addon/twitter/twitter.php:193
msgid "Send public postings to Twitter by default"
msgstr ""
-#: ../../addon/twitter/twitter.php:317
+#: ../../addon/twitter/twitter.php:357
msgid "Consumer key"
msgstr ""
-#: ../../addon/twitter/twitter.php:318
+#: ../../addon/twitter/twitter.php:358
msgid "Consumer secret"
msgstr ""
@@ -4384,7 +4531,7 @@ msgstr ""
msgid "Post to Posterous by default"
msgstr ""
-#: ../../include/profile_advanced.php:17 ../../boot.php:978
+#: ../../include/profile_advanced.php:17 ../../boot.php:982
msgid "Gender:"
msgstr ""
@@ -4397,7 +4544,7 @@ msgid "j F"
msgstr ""
#: ../../include/profile_advanced.php:30 ../../include/datetime.php:438
-#: ../../include/items.php:1318
+#: ../../include/items.php:1349
msgid "Birthday:"
msgstr ""
@@ -4405,11 +4552,11 @@ msgstr ""
msgid "Age:"
msgstr ""
-#: ../../include/profile_advanced.php:37 ../../boot.php:981
+#: ../../include/profile_advanced.php:37 ../../boot.php:985
msgid "Status:"
msgstr ""
-#: ../../include/profile_advanced.php:45 ../../boot.php:983
+#: ../../include/profile_advanced.php:45 ../../boot.php:987
msgid "Homepage:"
msgstr ""
@@ -4745,20 +4892,20 @@ msgstr ""
msgid "Ask me"
msgstr ""
-#: ../../include/event.php:17 ../../include/bb2diaspora.php:255
+#: ../../include/event.php:17 ../../include/bb2diaspora.php:274
msgid "Starts:"
msgstr ""
-#: ../../include/event.php:27 ../../include/bb2diaspora.php:263
+#: ../../include/event.php:27 ../../include/bb2diaspora.php:282
msgid "Finishes:"
msgstr ""
-#: ../../include/delivery.php:416 ../../include/notifier.php:629
+#: ../../include/delivery.php:424 ../../include/notifier.php:637
msgid "(no subject)"
msgstr ""
-#: ../../include/delivery.php:423 ../../include/enotify.php:16
-#: ../../include/notifier.php:636
+#: ../../include/delivery.php:431 ../../include/enotify.php:16
+#: ../../include/notifier.php:644
msgid "noreply"
msgstr ""
@@ -4793,91 +4940,91 @@ msgstr[1] ""
msgid "Search"
msgstr ""
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Monday"
msgstr ""
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Tuesday"
msgstr ""
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Wednesday"
msgstr ""
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Thursday"
msgstr ""
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Friday"
msgstr ""
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Saturday"
msgstr ""
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Sunday"
msgstr ""
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "January"
msgstr ""
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "February"
msgstr ""
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "March"
msgstr ""
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "April"
msgstr ""
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "May"
msgstr ""
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "June"
msgstr ""
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "July"
msgstr ""
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "August"
msgstr ""
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "September"
msgstr ""
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "October"
msgstr ""
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "November"
msgstr ""
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "December"
msgstr ""
-#: ../../include/text.php:809
+#: ../../include/text.php:887
msgid "bytes"
msgstr ""
-#: ../../include/text.php:901
+#: ../../include/text.php:982
msgid "Select an alternate language"
msgstr ""
-#: ../../include/text.php:913
+#: ../../include/text.php:994
msgid "default"
msgstr ""
@@ -4885,11 +5032,11 @@ msgstr ""
msgid "Sharing notification from Diaspora network"
msgstr ""
-#: ../../include/diaspora.php:1895
+#: ../../include/diaspora.php:1911
msgid "Attachments:"
msgstr ""
-#: ../../include/diaspora.php:2078
+#: ../../include/diaspora.php:2094
#, php-format
msgid "[Relayed] Comment authored by %s from network %s"
msgstr ""
@@ -4929,7 +5076,7 @@ msgstr ""
msgid "Create a new group"
msgstr ""
-#: ../../include/nav.php:44 ../../boot.php:705
+#: ../../include/nav.php:44 ../../boot.php:709
msgid "Logout"
msgstr ""
@@ -4937,7 +5084,7 @@ msgstr ""
msgid "End this session"
msgstr ""
-#: ../../include/nav.php:47 ../../boot.php:1327
+#: ../../include/nav.php:47 ../../boot.php:1331
msgid "Status"
msgstr ""
@@ -4949,7 +5096,7 @@ msgstr ""
msgid "Your profile page"
msgstr ""
-#: ../../include/nav.php:49 ../../boot.php:1337
+#: ../../include/nav.php:49 ../../boot.php:1341
msgid "Photos"
msgstr ""
@@ -5021,39 +5168,43 @@ msgstr ""
msgid "See all notifications"
msgstr ""
-#: ../../include/nav.php:123
+#: ../../include/nav.php:120
+msgid "Mark all system notifications seen"
+msgstr ""
+
+#: ../../include/nav.php:124
msgid "Private mail"
msgstr ""
-#: ../../include/nav.php:126
+#: ../../include/nav.php:127
msgid "Manage"
msgstr ""
-#: ../../include/nav.php:126
+#: ../../include/nav.php:127
msgid "Manage other pages"
msgstr ""
-#: ../../include/nav.php:130 ../../boot.php:936
+#: ../../include/nav.php:131 ../../boot.php:940
msgid "Profiles"
msgstr ""
-#: ../../include/nav.php:130 ../../boot.php:936
+#: ../../include/nav.php:131 ../../boot.php:940
msgid "Manage/edit profiles"
msgstr ""
-#: ../../include/nav.php:131
+#: ../../include/nav.php:132
msgid "Manage/edit friends and contacts"
msgstr ""
-#: ../../include/nav.php:138
+#: ../../include/nav.php:139
msgid "Admin"
msgstr ""
-#: ../../include/nav.php:138
+#: ../../include/nav.php:139
msgid "Site setup and configuration"
msgstr ""
-#: ../../include/nav.php:161
+#: ../../include/nav.php:162
msgid "Nothing new here"
msgstr ""
@@ -5185,11 +5336,15 @@ msgstr ""
msgid "%1$d %2$s ago"
msgstr ""
-#: ../../include/poller.php:459
+#: ../../include/poller.php:474
msgid "From: "
msgstr ""
-#: ../../include/bbcode.php:166 ../../include/bbcode.php:225
+#: ../../include/bbcode.php:202
+msgid "$1 wrote:"
+msgstr ""
+
+#: ../../include/bbcode.php:216 ../../include/bbcode.php:282
msgid "Image/photo"
msgstr ""
@@ -5237,6 +5392,15 @@ msgstr ""
msgid "%s sent you a new private message at %s."
msgstr ""
+#: ../../include/enotify.php:31
+#, php-format
+msgid "%s sent you %s."
+msgstr ""
+
+#: ../../include/enotify.php:31
+msgid "a private message"
+msgstr ""
+
#: ../../include/enotify.php:32
#, php-format
msgid "Please visit %s to view and/or reply to your private messages."
@@ -5252,84 +5416,138 @@ msgstr ""
msgid "%s commented on an item/conversation you have been following."
msgstr ""
-#: ../../include/enotify.php:42 ../../include/enotify.php:51
-#: ../../include/enotify.php:60 ../../include/enotify.php:69
+#: ../../include/enotify.php:42
+#, php-format
+msgid "%s commented in %s."
+msgstr ""
+
+#: ../../include/enotify.php:42
+msgid "a watched conversation"
+msgstr ""
+
+#: ../../include/enotify.php:44 ../../include/enotify.php:54
+#: ../../include/enotify.php:64 ../../include/enotify.php:74
#, php-format
msgid "Please visit %s to view and/or reply to the conversation."
msgstr ""
-#: ../../include/enotify.php:49
+#: ../../include/enotify.php:51
#, php-format
msgid "%s posted to your profile wall at %s"
msgstr ""
-#: ../../include/enotify.php:58
+#: ../../include/enotify.php:52
+#, php-format
+msgid "%s posted to %s"
+msgstr ""
+
+#: ../../include/enotify.php:52
+msgid "your profile wall."
+msgstr ""
+
+#: ../../include/enotify.php:61
#, php-format
msgid "%s tagged you at %s"
msgstr ""
-#: ../../include/enotify.php:67
+#: ../../include/enotify.php:62
+#, php-format
+msgid "%s %s."
+msgstr ""
+
+#: ../../include/enotify.php:62
+msgid "tagged you"
+msgstr ""
+
+#: ../../include/enotify.php:71
#, php-format
msgid "%s tagged your post at %s"
msgstr ""
-#: ../../include/enotify.php:76
+#: ../../include/enotify.php:72
+#, php-format
+msgid "%s tagged %s"
+msgstr ""
+
+#: ../../include/enotify.php:72
+msgid "your post"
+msgstr ""
+
+#: ../../include/enotify.php:81
#, php-format
msgid "Introduction received at %s"
msgstr ""
-#: ../../include/enotify.php:77
+#: ../../include/enotify.php:82
#, php-format
msgid "You've received an introduction from '%s' at %s"
msgstr ""
-#: ../../include/enotify.php:78 ../../include/enotify.php:91
+#: ../../include/enotify.php:83
+#, php-format
+msgid "You've received %s from %s."
+msgstr ""
+
+#: ../../include/enotify.php:83
+msgid "an introduction"
+msgstr ""
+
+#: ../../include/enotify.php:84 ../../include/enotify.php:101
#, php-format
msgid "You may visit their profile at %s"
msgstr ""
-#: ../../include/enotify.php:80
+#: ../../include/enotify.php:86
#, php-format
msgid "Please visit %s to approve or reject the introduction."
msgstr ""
-#: ../../include/enotify.php:87
+#: ../../include/enotify.php:93
#, php-format
msgid "Friend suggestion received at %s"
msgstr ""
-#: ../../include/enotify.php:88
+#: ../../include/enotify.php:94
#, php-format
msgid "You've received a friend suggestion from '%s' at %s"
msgstr ""
-#: ../../include/enotify.php:89
+#: ../../include/enotify.php:95
+#, php-format
+msgid "You've received %s for %s from %s."
+msgstr ""
+
+#: ../../include/enotify.php:96
+msgid "a friend suggestion"
+msgstr ""
+
+#: ../../include/enotify.php:99
msgid "Name:"
msgstr ""
-#: ../../include/enotify.php:90
+#: ../../include/enotify.php:100
msgid "Photo:"
msgstr ""
-#: ../../include/enotify.php:93
+#: ../../include/enotify.php:103
#, php-format
msgid "Please visit %s to approve or reject the suggestion."
msgstr ""
-#: ../../include/items.php:2450
+#: ../../include/items.php:2511
msgid "A new person is sharing with you at "
msgstr ""
-#: ../../include/items.php:2450
+#: ../../include/items.php:2511
msgid "You have a new follower at "
msgstr ""
-#: ../../include/bb2diaspora.php:64
+#: ../../include/bb2diaspora.php:83
msgid "view full size"
msgstr ""
-#: ../../include/bb2diaspora.php:113 ../../include/bb2diaspora.php:123
-#: ../../include/bb2diaspora.php:124
+#: ../../include/bb2diaspora.php:132 ../../include/bb2diaspora.php:142
+#: ../../include/bb2diaspora.php:143
msgid "image/photo"
msgstr ""
@@ -5345,282 +5563,282 @@ msgstr ""
msgid "Welcome back "
msgstr ""
-#: ../../include/Contact.php:131 ../../include/conversation.php:744
+#: ../../include/Contact.php:131 ../../include/conversation.php:769
msgid "View status"
msgstr ""
-#: ../../include/Contact.php:132 ../../include/conversation.php:745
+#: ../../include/Contact.php:132 ../../include/conversation.php:770
msgid "View profile"
msgstr ""
-#: ../../include/Contact.php:133 ../../include/conversation.php:746
+#: ../../include/Contact.php:133 ../../include/conversation.php:771
msgid "View photos"
msgstr ""
#: ../../include/Contact.php:134 ../../include/Contact.php:147
-#: ../../include/conversation.php:747
+#: ../../include/conversation.php:772
msgid "View recent"
msgstr ""
#: ../../include/Contact.php:136 ../../include/Contact.php:147
-#: ../../include/conversation.php:749
+#: ../../include/conversation.php:774
msgid "Send PM"
msgstr ""
-#: ../../include/conversation.php:141
+#: ../../include/conversation.php:163
msgid "post/item"
msgstr ""
-#: ../../include/conversation.php:142
+#: ../../include/conversation.php:164
#, php-format
msgid "%1$s marked %2$s's %3$s as favorite"
msgstr ""
-#: ../../include/conversation.php:279 ../../include/conversation.php:535
+#: ../../include/conversation.php:301 ../../include/conversation.php:562
msgid "Select"
msgstr ""
-#: ../../include/conversation.php:294 ../../include/conversation.php:623
-#: ../../include/conversation.php:624
+#: ../../include/conversation.php:316 ../../include/conversation.php:648
+#: ../../include/conversation.php:649
#, php-format
msgid "View %s's profile @ %s"
msgstr ""
-#: ../../include/conversation.php:303 ../../include/conversation.php:635
+#: ../../include/conversation.php:325 ../../include/conversation.php:660
#, php-format
msgid "%s from %s"
msgstr ""
-#: ../../include/conversation.php:319
+#: ../../include/conversation.php:341
msgid "View in context"
msgstr ""
-#: ../../include/conversation.php:434
+#: ../../include/conversation.php:456
#, php-format
msgid "%d comment"
msgid_plural "%d comments"
msgstr[0] ""
msgstr[1] ""
-#: ../../include/conversation.php:437 ../../boot.php:444
+#: ../../include/conversation.php:459 ../../boot.php:448
msgid "show more"
msgstr ""
-#: ../../include/conversation.php:497
+#: ../../include/conversation.php:519
msgid "like"
msgstr ""
-#: ../../include/conversation.php:498
+#: ../../include/conversation.php:520
msgid "dislike"
msgstr ""
-#: ../../include/conversation.php:500
+#: ../../include/conversation.php:522
msgid "Share this"
msgstr ""
-#: ../../include/conversation.php:500
+#: ../../include/conversation.php:522
msgid "share"
msgstr ""
-#: ../../include/conversation.php:545
+#: ../../include/conversation.php:572
msgid "add star"
msgstr ""
-#: ../../include/conversation.php:546
+#: ../../include/conversation.php:573
msgid "remove star"
msgstr ""
-#: ../../include/conversation.php:547
+#: ../../include/conversation.php:574
msgid "toggle star status"
msgstr ""
-#: ../../include/conversation.php:550
+#: ../../include/conversation.php:577
msgid "starred"
msgstr ""
-#: ../../include/conversation.php:551
+#: ../../include/conversation.php:578
msgid "add tag"
msgstr ""
-#: ../../include/conversation.php:625
+#: ../../include/conversation.php:650
msgid "to"
msgstr ""
-#: ../../include/conversation.php:626
+#: ../../include/conversation.php:651
msgid "Wall-to-Wall"
msgstr ""
-#: ../../include/conversation.php:627
+#: ../../include/conversation.php:652
msgid "via Wall-To-Wall:"
msgstr ""
-#: ../../include/conversation.php:669
+#: ../../include/conversation.php:694
msgid "Delete Selected Items"
msgstr ""
-#: ../../include/conversation.php:801
+#: ../../include/conversation.php:826
#, php-format
msgid "%s likes this."
msgstr ""
-#: ../../include/conversation.php:801
+#: ../../include/conversation.php:826
#, php-format
msgid "%s doesn't like this."
msgstr ""
-#: ../../include/conversation.php:805
+#: ../../include/conversation.php:830
#, php-format
msgid "<span %1$s>%2$d people</span> like this."
msgstr ""
-#: ../../include/conversation.php:807
+#: ../../include/conversation.php:832
#, php-format
msgid "<span %1$s>%2$d people</span> don't like this."
msgstr ""
-#: ../../include/conversation.php:813
+#: ../../include/conversation.php:838
msgid "and"
msgstr ""
-#: ../../include/conversation.php:816
+#: ../../include/conversation.php:841
#, php-format
msgid ", and %d other people"
msgstr ""
-#: ../../include/conversation.php:817
+#: ../../include/conversation.php:842
#, php-format
msgid "%s like this."
msgstr ""
-#: ../../include/conversation.php:817
+#: ../../include/conversation.php:842
#, php-format
msgid "%s don't like this."
msgstr ""
-#: ../../include/conversation.php:842
+#: ../../include/conversation.php:867
msgid "Visible to <strong>everybody</strong>"
msgstr ""
-#: ../../include/conversation.php:844
+#: ../../include/conversation.php:869
msgid "Please enter a video link/URL:"
msgstr ""
-#: ../../include/conversation.php:845
+#: ../../include/conversation.php:870
msgid "Please enter an audio link/URL:"
msgstr ""
-#: ../../include/conversation.php:846
+#: ../../include/conversation.php:871
msgid "Tag term:"
msgstr ""
-#: ../../include/conversation.php:847
+#: ../../include/conversation.php:872
msgid "Where are you right now?"
msgstr ""
-#: ../../include/conversation.php:848
+#: ../../include/conversation.php:873
msgid "Enter a title for this item"
msgstr ""
-#: ../../include/conversation.php:891
+#: ../../include/conversation.php:916
msgid "upload photo"
msgstr ""
-#: ../../include/conversation.php:893
+#: ../../include/conversation.php:918
msgid "attach file"
msgstr ""
-#: ../../include/conversation.php:895
+#: ../../include/conversation.php:920
msgid "web link"
msgstr ""
-#: ../../include/conversation.php:896
+#: ../../include/conversation.php:921
msgid "Insert video link"
msgstr ""
-#: ../../include/conversation.php:897
+#: ../../include/conversation.php:922
msgid "video link"
msgstr ""
-#: ../../include/conversation.php:898
+#: ../../include/conversation.php:923
msgid "Insert audio link"
msgstr ""
-#: ../../include/conversation.php:899
+#: ../../include/conversation.php:924
msgid "audio link"
msgstr ""
-#: ../../include/conversation.php:901
+#: ../../include/conversation.php:926
msgid "set location"
msgstr ""
-#: ../../include/conversation.php:903
+#: ../../include/conversation.php:928
msgid "clear location"
msgstr ""
-#: ../../include/conversation.php:908
+#: ../../include/conversation.php:933
msgid "permissions"
msgstr ""
-#: ../../boot.php:442
+#: ../../boot.php:446
msgid "Delete this item?"
msgstr ""
-#: ../../boot.php:445
+#: ../../boot.php:449
msgid "show fewer"
msgstr ""
-#: ../../boot.php:688
+#: ../../boot.php:692
msgid "Create a New Account"
msgstr ""
-#: ../../boot.php:708
+#: ../../boot.php:712
msgid "Nickname or Email address: "
msgstr ""
-#: ../../boot.php:709
+#: ../../boot.php:713
msgid "Password: "
msgstr ""
-#: ../../boot.php:712
+#: ../../boot.php:716
msgid "Or login using OpenID: "
msgstr ""
-#: ../../boot.php:718
+#: ../../boot.php:722
msgid "Forgot your password?"
msgstr ""
-#: ../../boot.php:875
+#: ../../boot.php:879
msgid "Edit profile"
msgstr ""
-#: ../../boot.php:1042 ../../boot.php:1113
+#: ../../boot.php:1046 ../../boot.php:1117
msgid "g A l F d"
msgstr ""
-#: ../../boot.php:1043 ../../boot.php:1114
+#: ../../boot.php:1047 ../../boot.php:1118
msgid "F d"
msgstr ""
-#: ../../boot.php:1068
+#: ../../boot.php:1072
msgid "Birthday Reminders"
msgstr ""
-#: ../../boot.php:1069
+#: ../../boot.php:1073
msgid "Birthdays this week:"
msgstr ""
-#: ../../boot.php:1092 ../../boot.php:1156
+#: ../../boot.php:1096 ../../boot.php:1160
msgid "[today]"
msgstr ""
-#: ../../boot.php:1137
+#: ../../boot.php:1141
msgid "Event Reminders"
msgstr ""
-#: ../../boot.php:1138
+#: ../../boot.php:1142
msgid "Events this week:"
msgstr ""
-#: ../../boot.php:1150
+#: ../../boot.php:1154
msgid "[No description]"
msgstr ""
diff --git a/util/strings.php b/util/strings.php
index d0e36217b..e70766d86 100755
--- a/util/strings.php
+++ b/util/strings.php
@@ -2,39 +2,42 @@
;
$a->strings["Post successful."] = "";
+$a->strings["[Embedded content - reload page to view]"] = "";
$a->strings["Contact settings applied."] = "";
$a->strings["Contact update failed."] = "";
$a->strings["Permission denied."] = "";
$a->strings["Contact not found."] = "";
$a->strings["Repair Contact Settings"] = "";
-$a->strings["<strong>WARNING: This is highly advanced</strong> and if you enter incorrect information your communications with this contact will stop working."] = "";
+$a->strings["<strong>WARNING: This is highly advanced</strong> and if you enter incorrect information your communications with this contact may stop working."] = "";
$a->strings["Please use your browser 'Back' button <strong>now</strong> if you are uncertain what to do on this page."] = "";
+$a->strings["Return to contact editor"] = "";
$a->strings["Name"] = "";
$a->strings["Account Nickname"] = "";
+$a->strings["@Tagname - overrides Name/Nickname"] = "";
$a->strings["Account URL"] = "";
$a->strings["Friend Request URL"] = "";
$a->strings["Friend Confirm URL"] = "";
$a->strings["Notification Endpoint URL"] = "";
$a->strings["Poll/Feed URL"] = "";
+$a->strings["New photo from this URL"] = "";
$a->strings["Submit"] = "";
$a->strings["Help:"] = "";
$a->strings["Help"] = "";
+$a->strings["Not Found"] = "";
+$a->strings["Page not found."] = "";
$a->strings["File exceeds size limit of %d"] = "";
$a->strings["File upload failed."] = "";
$a->strings["Friend suggestion sent."] = "";
$a->strings["Suggest Friends"] = "";
$a->strings["Suggest a friend for %s"] = "";
-$a->strings["Status"] = "";
-$a->strings["Profile"] = "";
-$a->strings["Photos"] = "";
+$a->strings["Event description and start time are required."] = "";
+$a->strings["l, F j"] = "";
+$a->strings["Edit event"] = "";
+$a->strings["link to source"] = "";
$a->strings["Events"] = "";
-$a->strings["Personal Notes"] = "";
$a->strings["Create New Event"] = "";
$a->strings["Previous"] = "";
$a->strings["Next"] = "";
-$a->strings["l, F j"] = "";
-$a->strings["Edit event"] = "";
-$a->strings["link to source"] = "";
$a->strings["hour:minute"] = "";
$a->strings["Event details"] = "";
$a->strings["Format is %s %s. Starting date and Description are required."] = "";
@@ -51,8 +54,15 @@ $a->strings["Remove Item Tag"] = "";
$a->strings["Select a tag to remove: "] = "";
$a->strings["Remove"] = "";
$a->strings["%s welcomes %s"] = "";
+$a->strings["Authorize application connection"] = "";
+$a->strings["Return to your app and insert this Securty Code:"] = "";
+$a->strings["Please login to continue."] = "";
+$a->strings["Do you want to authorize this application to access your posts and contacts, and/or create new posts for you?"] = "";
+$a->strings["Yes"] = "";
+$a->strings["No"] = "";
$a->strings["Photo Albums"] = "";
$a->strings["Contact Photos"] = "";
+$a->strings["Upload New Photos"] = "";
$a->strings["everybody"] = "";
$a->strings["Contact information unavailable"] = "";
$a->strings["Profile Photos"] = "";
@@ -72,10 +82,13 @@ $a->strings["Access to this item is restricted."] = "";
$a->strings["Upload Photos"] = "";
$a->strings["New album name: "] = "";
$a->strings["or existing album name: "] = "";
+$a->strings["Do not show a status post for this upload"] = "";
$a->strings["Permissions"] = "";
$a->strings["Edit Album"] = "";
$a->strings["View Photo"] = "";
+$a->strings["Permission denied. Access to this item may be restricted."] = "";
$a->strings["Photo not available"] = "";
+$a->strings["View photo"] = "";
$a->strings["Edit photo"] = "";
$a->strings["Use as profile photo"] = "";
$a->strings["Private Message"] = "";
@@ -92,14 +105,20 @@ $a->strings["Share"] = "";
$a->strings["Please wait"] = "";
$a->strings["This is you"] = "";
$a->strings["Comment"] = "";
+$a->strings["Preview"] = "";
$a->strings["Delete"] = "";
-$a->strings["Recent Photos"] = "";
-$a->strings["Upload New Photos"] = "";
$a->strings["View Album"] = "";
+$a->strings["Recent Photos"] = "";
$a->strings["Not available."] = "";
$a->strings["Community"] = "";
$a->strings["No results."] = "";
-$a->strings["Shared content is covered by the <a href=\"http://creativecommons.org/licenses/by/3.0/\">Creative Commons Attribution 3.0</a> license."] = "";
+$a->strings["This is Friendica, version"] = "";
+$a->strings["running at web location"] = "";
+$a->strings["Please visit <a href=\"http://friendica.com\">Friendica.com</a> to learn more about the Friendica project."] = "";
+$a->strings["Bug reports and issues: please visit"] = "";
+$a->strings["Suggestions, praise, donations, etc. - please email \"Info\" at Friendica - dot com"] = "";
+$a->strings["Installed plugins/addons/apps"] = "";
+$a->strings["No installed plugins/addons/apps"] = "";
$a->strings["Item not found"] = "";
$a->strings["Edit post"] = "";
$a->strings["Post to Email"] = "";
@@ -115,6 +134,7 @@ $a->strings["Clear browser location"] = "";
$a->strings["Permission settings"] = "";
$a->strings["CC: email addresses"] = "";
$a->strings["Public post"] = "";
+$a->strings["Set title"] = "";
$a->strings["Example: bob@example.com, mary@example.com"] = "";
$a->strings["This introduction has already been accepted."] = "";
$a->strings["Profile location is not valid or does not contain profile information."] = "";
@@ -144,49 +164,59 @@ $a->strings["Welcome home %s."] = "";
$a->strings["Please confirm your introduction/connection request to %s."] = "";
$a->strings["Confirm"] = "";
$a->strings["[Name Withheld]"] = "";
-$a->strings["Introduction received at "] = "";
-$a->strings["Administrator"] = "";
+$a->strings["Diaspora members: Please do not use this form. Instead, enter \"%s\" into your Diaspora search bar."] = "";
+$a->strings["Please enter your 'Identity Address' from one of the following supported social networks:"] = "";
$a->strings["Friend/Connection Request"] = "";
-$a->strings["Examples: jojo@demo.friendika.com, http://demo.friendika.com/profile/jojo, testuser@identi.ca"] = "";
+$a->strings["Examples: jojo@demo.friendica.com, http://demo.friendica.com/profile/jojo, testuser@identi.ca"] = "";
$a->strings["Please answer the following:"] = "";
$a->strings["Does %s know you?"] = "";
-$a->strings["Yes"] = "";
-$a->strings["No"] = "";
$a->strings["Add a personal note:"] = "";
-$a->strings["Please enter your 'Identity Address' from one of the following supported social networks:"] = "";
-$a->strings["Friendika"] = "";
+$a->strings["Friendica"] = "";
$a->strings["StatusNet/Federated Social Web"] = "";
-$a->strings["Private (secure) network"] = "";
-$a->strings["Public (insecure) network"] = "";
+$a->strings["Diaspora"] = "";
+$a->strings["- please share from your own site as noted above"] = "";
$a->strings["Your Identity Address:"] = "";
$a->strings["Submit Request"] = "";
-$a->strings["Could not create/connect to database."] = "";
-$a->strings["Connected to database."] = "";
-$a->strings["Proceed with Installation"] = "";
-$a->strings["Your Friendika site database has been installed."] = "";
+$a->strings["Friendica Social Communications Server - Setup"] = "";
+$a->strings["Database connection"] = "";
+$a->strings["Could not connect to database."] = "";
+$a->strings["Could not create table."] = "";
+$a->strings["Your Friendica site database has been installed."] = "";
$a->strings["IMPORTANT: You will need to [manually] setup a scheduled task for the poller."] = "";
$a->strings["Please see the file \"INSTALL.txt\"."] = "";
$a->strings["Proceed to registration"] = "";
-$a->strings["Database import failed."] = "";
+$a->strings["Proceed with Installation"] = "";
$a->strings["You may need to import the file \"database.sql\" manually using phpmyadmin or mysql."] = "";
-$a->strings["Welcome to Friendika."] = "";
-$a->strings["Friendika Social Network"] = "";
-$a->strings["Installation"] = "";
-$a->strings["In order to install Friendika we need to know how to connect to your database."] = "";
+$a->strings["Database import failed."] = "";
+$a->strings["System check"] = "";
+$a->strings["Check again"] = "";
+$a->strings["In order to install Friendica we need to know how to connect to your database."] = "";
$a->strings["Please contact your hosting provider or site administrator if you have questions about these settings."] = "";
$a->strings["The database you specify below should already exist. If it does not, please create it before continuing."] = "";
$a->strings["Database Server Name"] = "";
$a->strings["Database Login Name"] = "";
$a->strings["Database Login Password"] = "";
$a->strings["Database Name"] = "";
+$a->strings["Site administrator email address"] = "";
+$a->strings["Your account email address must match this in order to use the web admin panel."] = "";
$a->strings["Please select a default timezone for your website"] = "";
-$a->strings["Site administrator email address. Your account email address must match this in order to use the web admin panel."] = "";
+$a->strings["Site settings"] = "";
$a->strings["Could not find a command line version of PHP in the web server PATH."] = "";
-$a->strings["This is required. Please adjust the configuration file .htconfig.php accordingly."] = "";
+$a->strings["PHP executable path"] = "";
+$a->strings["Enter full path to php executable"] = "";
+$a->strings["Command line PHP"] = "";
$a->strings["The command line version of PHP on your system does not have \"register_argc_argv\" enabled."] = "";
$a->strings["This is required for message delivery to work."] = "";
+$a->strings["PHP \"register_argc_argv\""] = "";
$a->strings["Error: the \"openssl_pkey_new\" function on this system is not able to generate encryption keys"] = "";
$a->strings["If running under Windows, please see \"http://www.php.net/manual/en/openssl.installation.php\"."] = "";
+$a->strings["Generate encryption keys"] = "";
+$a->strings["libCurl PHP module"] = "";
+$a->strings["GD graphics PHP module"] = "";
+$a->strings["OpenSSL PHP module"] = "";
+$a->strings["mysqli PHP module"] = "";
+$a->strings["mb_string PHP module"] = "";
+$a->strings["Apace mod_rewrite module"] = "";
$a->strings["Error: Apache webserver mod-rewrite module is required but not installed."] = "";
$a->strings["Error: libCURL PHP module required but not installed."] = "";
$a->strings["Error: GD graphics PHP module with JPEG support required but not installed."] = "";
@@ -197,11 +227,20 @@ $a->strings["The web installer needs to be able to create a file called \".htcon
$a->strings["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."] = "";
$a->strings["Please check with your site documentation or support people to see if this situation can be corrected."] = "";
$a->strings["If not, you may be required to perform a manual installation. Please see the file \"INSTALL.txt\" for instructions."] = "";
+$a->strings[".htconfig.php is writable"] = "";
$a->strings["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."] = "";
$a->strings["Errors encountered creating database tables."] = "";
-$a->strings["[Embedded content - reload page to view]"] = "";
+$a->strings["l F d, Y \\@ g:i A"] = "";
+$a->strings["Time Conversion"] = "";
+$a->strings["Friendika provides this service for sharing events with other networks and friends in unknown timezones."] = "";
+$a->strings["UTC time: %s"] = "";
+$a->strings["Current timezone: %s"] = "";
+$a->strings["Converted localtime: %s"] = "";
+$a->strings["Please select your timezone:"] = "";
$a->strings["Profile Match"] = "";
$a->strings["No keywords to match. Please add keywords to your default profile."] = "";
+$a->strings["is interested in:"] = "";
+$a->strings["Connect"] = "";
$a->strings["No matches"] = "";
$a->strings["Remote privacy information not available."] = "";
$a->strings["Visible to:"] = "";
@@ -209,31 +248,45 @@ $a->strings["Welcome to %s"] = "";
$a->strings["Invalid request identifier."] = "";
$a->strings["Discard"] = "";
$a->strings["Ignore"] = "";
-$a->strings["Pending Friend/Connect Notifications"] = "";
+$a->strings["System"] = "";
+$a->strings["Network"] = "";
+$a->strings["Personal"] = "";
+$a->strings["Home"] = "";
+$a->strings["Introductions"] = "";
+$a->strings["Messages"] = "";
$a->strings["Show Ignored Requests"] = "";
$a->strings["Hide Ignored Requests"] = "";
$a->strings["Notification type: "] = "";
$a->strings["Friend Suggestion"] = "";
$a->strings["suggested by %s"] = "";
+$a->strings["Hide this contact from others"] = "";
+$a->strings["Post a new friend activity"] = "";
+$a->strings["if applicable"] = "";
$a->strings["Approve"] = "";
$a->strings["Claims to be known to you: "] = "";
$a->strings["yes"] = "";
$a->strings["no"] = "";
$a->strings["Approve as: "] = "";
$a->strings["Friend"] = "";
+$a->strings["Sharer"] = "";
$a->strings["Fan/Admirer"] = "";
$a->strings["Friend/Connect Request"] = "";
$a->strings["New Follower"] = "";
-$a->strings["No notifications."] = "";
-$a->strings["Invite Friends"] = "";
-$a->strings["%d invitation available"] = array(
- 0 => "",
- 1 => "",
-);
-$a->strings["Find People With Shared Interests"] = "";
-$a->strings["Connect/Follow"] = "";
-$a->strings["Example: bob@example.com, http://example.com/barbara"] = "";
-$a->strings["Follow"] = "";
+$a->strings["No introductions."] = "";
+$a->strings["Notifications"] = "";
+$a->strings["%s liked %s's post"] = "";
+$a->strings["%s disliked %s's post"] = "";
+$a->strings["%s is now friends with %s"] = "";
+$a->strings["%s created a new post"] = "";
+$a->strings["%s commented on %s's post"] = "";
+$a->strings["No more network notifications."] = "";
+$a->strings["Network Notifications"] = "";
+$a->strings["No more system notifications."] = "";
+$a->strings["System Notifications"] = "";
+$a->strings["No more personal notifications."] = "";
+$a->strings["Personal Notifications"] = "";
+$a->strings["No more home notifications."] = "";
+$a->strings["Home Notifications"] = "";
$a->strings["Could not access contact record."] = "";
$a->strings["Could not locate selected profile."] = "";
$a->strings["Contact updated."] = "";
@@ -243,48 +296,58 @@ $a->strings["Contact has been ignored"] = "";
$a->strings["Contact has been unignored"] = "";
$a->strings["stopped following"] = "";
$a->strings["Contact has been removed."] = "";
-$a->strings["Mutual Friendship"] = "";
-$a->strings["is a fan of yours"] = "";
-$a->strings["you are a fan of"] = "";
-$a->strings["Privacy Unavailable"] = "";
+$a->strings["You are mutual friends with %s"] = "";
+$a->strings["You are sharing with %s"] = "";
+$a->strings["%s is sharing with you"] = "";
$a->strings["Private communications are not available for this contact."] = "";
$a->strings["Never"] = "";
$a->strings["(Update was successful)"] = "";
$a->strings["(Update was not successful)"] = "";
$a->strings["Suggest friends"] = "";
+$a->strings["Network type: %s"] = "";
+$a->strings["%d contact in common"] = array(
+ 0 => "",
+ 1 => "",
+);
+$a->strings["View all contacts"] = "";
+$a->strings["Unblock"] = "";
+$a->strings["Block"] = "";
+$a->strings["Unignore"] = "";
+$a->strings["Repair"] = "";
$a->strings["Contact Editor"] = "";
$a->strings["Profile Visibility"] = "";
$a->strings["Please choose the profile you would like to display to %s when viewing your profile securely."] = "";
$a->strings["Contact Information / Notes"] = "";
-$a->strings["Online Reputation"] = "";
-$a->strings["Occasionally your friends may wish to inquire about this person's online legitimacy."] = "";
-$a->strings["You may help them choose whether or not to interact with this person by providing a <em>reputation</em> to guide them."] = "";
-$a->strings["Please take a moment to elaborate on this selection if you feel it could be helpful to others."] = "";
+$a->strings["Edit contact notes"] = "";
$a->strings["Visit %s's profile [%s]"] = "";
$a->strings["Block/Unblock contact"] = "";
$a->strings["Ignore contact"] = "";
-$a->strings["Repair contact URL settings"] = "";
-$a->strings["Repair contact URL settings (WARNING: Advanced)"] = "";
+$a->strings["Repair URL settings"] = "";
$a->strings["View conversations"] = "";
$a->strings["Delete contact"] = "";
-$a->strings["Last updated: "] = "";
-$a->strings["Update public posts: "] = "";
+$a->strings["Last update:"] = "";
+$a->strings["Update public posts"] = "";
$a->strings["Update now"] = "";
-$a->strings["Unblock this contact"] = "";
-$a->strings["Block this contact"] = "";
-$a->strings["Unignore this contact"] = "";
-$a->strings["Ignore this contact"] = "";
$a->strings["Currently blocked"] = "";
$a->strings["Currently ignored"] = "";
+$a->strings["Replies/likes to your public posts <strong>may</strong> still be visible"] = "";
+$a->strings["All Contacts"] = "";
+$a->strings["Unblocked Contacts"] = "";
+$a->strings["Blocked Contacts"] = "";
+$a->strings["Ignored Contacts"] = "";
+$a->strings["Hidden Contacts"] = "";
+$a->strings["Mutual Friendship"] = "";
+$a->strings["is a fan of yours"] = "";
+$a->strings["you are a fan of"] = "";
+$a->strings["Edit contact"] = "";
$a->strings["Contacts"] = "";
-$a->strings["Show Blocked Connections"] = "";
-$a->strings["Hide Blocked Connections"] = "";
+$a->strings["Search your contacts"] = "";
$a->strings["Finding: "] = "";
$a->strings["Find"] = "";
-$a->strings["Edit contact"] = "";
$a->strings["No valid account found."] = "";
$a->strings["Password reset request issued. Check your email."] = "";
$a->strings["Password reset requested at %s"] = "";
+$a->strings["Administrator"] = "";
$a->strings["Request could not be verified. (You may have previously submitted it.) Password reset failed."] = "";
$a->strings["Password Reset"] = "";
$a->strings["Your password has been reset as requested."] = "";
@@ -296,20 +359,53 @@ $a->strings["Forgot your Password?"] = "";
$a->strings["Enter your email address and submit to have your password reset. Then check your email for further instructions."] = "";
$a->strings["Nickname or Email: "] = "";
$a->strings["Reset"] = "";
+$a->strings["Missing some important data!"] = "";
+$a->strings["Update"] = "";
+$a->strings["Failed to connect with email account using the settings provided."] = "";
+$a->strings["Email settings updated."] = "";
$a->strings["Passwords do not match. Password unchanged."] = "";
$a->strings["Empty passwords are not allowed. Password unchanged."] = "";
$a->strings["Password changed."] = "";
$a->strings["Password update failed. Please try again."] = "";
-$a->strings["Failed to connect with email account using the settings provided."] = "";
$a->strings[" Please use a shorter name."] = "";
$a->strings[" Name too short."] = "";
$a->strings[" Not valid email."] = "";
$a->strings[" Cannot change to that email."] = "";
$a->strings["Settings updated."] = "";
$a->strings["Account settings"] = "";
+$a->strings["Connector settings"] = "";
$a->strings["Plugin settings"] = "";
+$a->strings["Connections"] = "";
+$a->strings["Export personal data"] = "";
+$a->strings["Add application"] = "";
+$a->strings["Consumer Key"] = "";
+$a->strings["Consumer Secret"] = "";
+$a->strings["Redirect"] = "";
+$a->strings["Icon url"] = "";
+$a->strings["You can't edit this application."] = "";
+$a->strings["Connected Apps"] = "";
+$a->strings["Client key starts with"] = "";
+$a->strings["No name"] = "";
+$a->strings["Remove authorization"] = "";
$a->strings["No Plugin settings configured"] = "";
$a->strings["Plugin Settings"] = "";
+$a->strings["Built-in support for %s connectivity is %s"] = "";
+$a->strings["enabled"] = "";
+$a->strings["disabled"] = "";
+$a->strings["StatusNet"] = "";
+$a->strings["Connector Settings"] = "";
+$a->strings["Email/Mailbox Setup"] = "";
+$a->strings["If you wish to communicate with email contacts using this service (optional), please specify how to connect to your mailbox."] = "";
+$a->strings["Last successful email check:"] = "";
+$a->strings["Email access is disabled on this site."] = "";
+$a->strings["IMAP server name:"] = "";
+$a->strings["IMAP port:"] = "";
+$a->strings["Security:"] = "";
+$a->strings["None"] = "";
+$a->strings["Email login name:"] = "";
+$a->strings["Email password:"] = "";
+$a->strings["Reply-to address:"] = "";
+$a->strings["Send public posts to all email contacts:"] = "";
$a->strings["Normal Account"] = "";
$a->strings["This account is a normal personal profile"] = "";
$a->strings["Soapbox Account"] = "";
@@ -323,12 +419,22 @@ $a->strings["(Optional) Allow this OpenID to login to this account."] = "";
$a->strings["Publish your default profile in your local site directory?"] = "";
$a->strings["Publish your default profile in the global social directory?"] = "";
$a->strings["Hide your contact/friend list from viewers of your default profile?"] = "";
-$a->strings["Hide profile details and all your messages from unknown viewers?"] = "";
+$a->strings["Hide your profile details from unknown viewers?"] = "";
+$a->strings["Allow friends to post to your profile page?"] = "";
+$a->strings["Allow friends to tag your posts?"] = "";
+$a->strings["Allow us to suggest you as a potential friend to new members?"] = "";
$a->strings["Profile is <strong>not published</strong>."] = "";
$a->strings["or"] = "";
$a->strings["Your Identity Address is"] = "";
+$a->strings["Automatically expire posts after this many days:"] = "";
+$a->strings["If empty, posts will not expire. Expired posts will be deleted"] = "";
+$a->strings["Advanced expiration settings"] = "";
+$a->strings["Advanced Expiration"] = "";
+$a->strings["Expire posts:"] = "";
+$a->strings["Expire personal notes:"] = "";
+$a->strings["Expire starred posts:"] = "";
+$a->strings["Expire photos:"] = "";
$a->strings["Account Settings"] = "";
-$a->strings["Export Personal Data"] = "";
$a->strings["Password Settings"] = "";
$a->strings["New Password:"] = "";
$a->strings["Confirm:"] = "";
@@ -340,14 +446,13 @@ $a->strings["Your Timezone:"] = "";
$a->strings["Default Post Location:"] = "";
$a->strings["Use Browser Location:"] = "";
$a->strings["Display Theme:"] = "";
+$a->strings["Update browser every xx seconds"] = "";
+$a->strings["Minimum of 10 seconds, no maximum"] = "";
$a->strings["Security and Privacy Settings"] = "";
$a->strings["Maximum Friend Requests/Day:"] = "";
$a->strings["(to prevent spam abuse)"] = "";
$a->strings["Default Post Permissions"] = "";
$a->strings["(click to open/close)"] = "";
-$a->strings["Allow friends to post to your profile page:"] = "";
-$a->strings["Automatically expire posts after days:"] = "";
-$a->strings["If empty, posts will not expire. Expired posts will be deleted"] = "";
$a->strings["Notification Settings"] = "";
$a->strings["Send a notification email when:"] = "";
$a->strings["You receive an introduction"] = "";
@@ -355,27 +460,21 @@ $a->strings["Your introductions are confirmed"] = "";
$a->strings["Someone writes on your profile wall"] = "";
$a->strings["Someone writes a followup comment"] = "";
$a->strings["You receive a private message"] = "";
-$a->strings["Email/Mailbox Setup"] = "";
-$a->strings["If you wish to communicate with email contacts using this service (optional), please specify how to connect to your mailbox."] = "";
-$a->strings["Last successful email check:"] = "";
-$a->strings["Email access is disabled on this site."] = "";
-$a->strings["IMAP server name:"] = "";
-$a->strings["IMAP port:"] = "";
-$a->strings["Security:"] = "";
-$a->strings["None"] = "";
-$a->strings["Email login name:"] = "";
-$a->strings["Email password:"] = "";
-$a->strings["Reply-to address:"] = "";
-$a->strings["Send public posts to all email contacts:"] = "";
+$a->strings["You receive a friend suggestion"] = "";
+$a->strings["You are tagged in a post"] = "";
$a->strings["Advanced Page Settings"] = "";
-$a->strings["Welcome back %s"] = "";
$a->strings["Manage Identities and/or Pages"] = "";
-$a->strings["(Toggle between different identities or community/group pages which share your account details.)"] = "";
+$a->strings["Toggle between different identities or community/group pages which share your account details or which you have been granted \"manage\" permissions"] = "";
$a->strings["Select an identity to manage: "] = "";
-$a->strings["View Conversations"] = "";
-$a->strings["View New Items"] = "";
-$a->strings["View Any Items"] = "";
-$a->strings["View Starred Items"] = "";
+$a->strings["Search Results For:"] = "";
+$a->strings["Remove term"] = "";
+$a->strings["Saved Searches"] = "";
+$a->strings["add"] = "";
+$a->strings["Commented Order"] = "";
+$a->strings["Posted Order"] = "";
+$a->strings["New"] = "";
+$a->strings["Starred"] = "";
+$a->strings["Bookmarks"] = "";
$a->strings["Warning: This group contains %s member from an insecure network."] = array(
0 => "",
1 => "",
@@ -387,19 +486,22 @@ $a->strings["Group: "] = "";
$a->strings["Contact: "] = "";
$a->strings["Private messages to this person are at risk of public disclosure."] = "";
$a->strings["Invalid contact."] = "";
+$a->strings["Personal Notes"] = "";
$a->strings["Save"] = "";
-$a->strings["Welcome to Friendika"] = "";
+$a->strings["Welcome to Friendica"] = "";
$a->strings["New Member Checklist"] = "";
-$a->strings["We would like to offer some tips and links to help make your experience enjoyable. Click any item to visit the relevant page."] = "";
-$a->strings["On your <em>Settings</em> page - change your initial password. Also make a note of your Identity Address. This will be useful in making friends."] = "";
+$a->strings["We would like to offer some tips and links to help make your experience enjoyable. Click any item to visit the relevant page. A link to this page will be visible from your home page for two weeks after your initial registration and then will quietly disappear."] = "";
+$a->strings["On your <em>Settings</em> page - change your initial password. Also make a note of your Identity Address. This looks just like an email address - and will be useful in making friends on the free social web."] = "";
$a->strings["Review the other settings, particularly the privacy settings. An unpublished directory listing is like having an unlisted phone number. In general, you should probably publish your listing - unless all of your friends and potential friends know exactly how to find you."] = "";
$a->strings["Upload a profile photo if you have not done so already. Studies have shown that people with real photos of themselves are ten times more likely to make friends than people who do not."] = "";
$a->strings["Authorise the Facebook Connector if you currently have a Facebook account and we will (optionally) import all your Facebook friends and conversations."] = "";
-$a->strings["Enter your email access information on your Settings page if you wish to import and interact with friends or mailing lists from your email INBOX"] = "";
+$a->strings["<em>If</em> this is your own personal server, installing the Facebook addon may ease your transition to the free social web."] = "";
+$a->strings["Enter your email access information on your Connector Settings page if you wish to import and interact with friends or mailing lists from your email INBOX"] = "";
$a->strings["Edit your <strong>default</strong> profile to your liking. Review the settings for hiding your list of friends and hiding the profile from unknown visitors."] = "";
$a->strings["Set some public keywords for your default profile which describe your interests. We may be able to find other people with similar interests and suggest friendships."] = "";
-$a->strings["Your Contacts page is your gateway to managing friendships and connecting with friends on other networks. Typically you enter their address or site URL in the <em>Connect</em> dialog."] = "";
+$a->strings["Your Contacts page is your gateway to managing friendships and connecting with friends on other networks. Typically you enter their address or site URL in the <em>Add New Contact</em> dialog."] = "";
$a->strings["The Directory page lets you find other people in this network or other federated sites. Look for a <em>Connect</em> or <em>Follow</em> link on their profile page. Provide your own Identity Address if requested."] = "";
+$a->strings["On the side panel of the Contacts page are several tools to find new friends. We can match people by interest, look up people by name or interest, and provide suggestions based on network relationships. On a brand new site, friend suggestions will usually begin to be populated within 24 hours."] = "";
$a->strings["Once you have made some friends, organize them into private conversation groups from the sidebar of your Contacts page and then you can interact with each group privately on your Network page."] = "";
$a->strings["Our <strong>help</strong> pages may be consulted for detail on other program features and resources."] = "";
$a->strings["Item not available."] = "";
@@ -416,13 +518,13 @@ $a->strings["Unable to remove group."] = "";
$a->strings["Click on a contact to add or remove."] = "";
$a->strings["Group Editor"] = "";
$a->strings["Members"] = "";
-$a->strings["All Contacts"] = "";
$a->strings["Invalid profile identifier."] = "";
$a->strings["Profile Visibility Editor"] = "";
+$a->strings["Profile"] = "";
$a->strings["Visible To"] = "";
$a->strings["All Contacts (with secure profile access)"] = "";
-$a->strings["View Contacts"] = "";
$a->strings["No contacts."] = "";
+$a->strings["View Contacts"] = "";
$a->strings["An invitation is required."] = "";
$a->strings["Invitation could not be verified."] = "";
$a->strings["Invalid OpenID url"] = "";
@@ -444,6 +546,7 @@ $a->strings["Failed to send email message. Here is the message that failed."] =
$a->strings["Your registration can not be processed."] = "";
$a->strings["Registration request at %s"] = "";
$a->strings["Your registration is pending approval by the site owner."] = "";
+$a->strings["This site has exceeded the number of allowed daily account registrations. Please try again tomorrow."] = "";
$a->strings["You may (optionally) fill in this form via OpenID by supplying your OpenID and clicking 'Register'."] = "";
$a->strings["If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items."] = "";
$a->strings["Your OpenID (optional): "] = "";
@@ -456,34 +559,26 @@ $a->strings["Your Email Address: "] = "";
$a->strings["Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be '<strong>nickname@\$sitename</strong>'."] = "";
$a->strings["Choose a nickname: "] = "";
$a->strings["Register"] = "";
+$a->strings["People Search"] = "";
$a->strings["status"] = "";
$a->strings["%1\$s likes %2\$s's %3\$s"] = "";
$a->strings["%1\$s doesn't like %2\$s's %3\$s"] = "";
-$a->strings["This is Friendika version"] = "";
-$a->strings["running at web location"] = "";
-$a->strings["Shared content within the Friendika network is provided under the <a href=\"http://creativecommons.org/licenses/by/3.0/\">Creative Commons Attribution 3.0 license</a>"] = "";
-$a->strings["Please visit <a href=\"http://project.friendika.com\">Project.Friendika.com</a> to learn more about the Friendika project."] = "";
-$a->strings["Bug reports and issues: please visit"] = "";
-$a->strings["Suggestions, praise, donations, etc. - please email \"Info\" at Friendika - dot com"] = "";
-$a->strings["Installed plugins/addons/apps"] = "";
-$a->strings["No installed plugins/addons/apps"] = "";
+$a->strings["Item not found."] = "";
+$a->strings["Access denied."] = "";
$a->strings["Account approved."] = "";
$a->strings["Registration revoked for %s"] = "";
$a->strings["Please login."] = "";
$a->strings["Unable to locate original post."] = "";
$a->strings["Empty post discarded."] = "";
$a->strings["Wall Photos"] = "";
-$a->strings["noreply"] = "";
-$a->strings["Administrator@"] = "";
-$a->strings["%s commented on an item at %s"] = "";
-$a->strings["%s posted to your profile wall at %s"] = "";
$a->strings["System error. Post not saved."] = "";
-$a->strings["This message was sent to you by %s, a member of the Friendika social network."] = "";
+$a->strings["This message was sent to you by %s, a member of the Friendica social network."] = "";
$a->strings["You may visit them online at %s"] = "";
$a->strings["Please contact the sender by replying to this post if you do not wish to receive these messages."] = "";
$a->strings["%s posted an update."] = "";
$a->strings["Image uploaded but image cropping failed."] = "";
$a->strings["Image size reduction [%s] failed."] = "";
+$a->strings["Shift-reload the page or clear browser cache if the new photo does not display immediately."] = "";
$a->strings["Unable to process image"] = "";
$a->strings["Image exceeds size limit of %d"] = "";
$a->strings["Upload File:"] = "";
@@ -500,11 +595,10 @@ $a->strings["Remove My Account"] = "";
$a->strings["This will completely remove your account. Once this has been done it is not recoverable."] = "";
$a->strings["Please enter your password for verification:"] = "";
$a->strings["No recipient selected."] = "";
-$a->strings["[no subject]"] = "";
$a->strings["Unable to locate contact information."] = "";
-$a->strings["Message sent."] = "";
$a->strings["Message could not be sent."] = "";
-$a->strings["Messages"] = "";
+$a->strings["Message collection failure."] = "";
+$a->strings["Message sent."] = "";
$a->strings["Inbox"] = "";
$a->strings["Outbox"] = "";
$a->strings["New Message"] = "";
@@ -521,13 +615,14 @@ $a->strings["D, d M Y - g:i A"] = "";
$a->strings["Message not available."] = "";
$a->strings["Delete message"] = "";
$a->strings["Send Reply"] = "";
+$a->strings["Friends of %s"] = "";
+$a->strings["No friends to display."] = "";
$a->strings["Site"] = "";
$a->strings["Users"] = "";
$a->strings["Plugins"] = "";
-$a->strings["Update"] = "";
+$a->strings["Themes"] = "";
$a->strings["Logs"] = "";
$a->strings["User registrations waiting for confirmation"] = "";
-$a->strings["Item not found."] = "";
$a->strings["Administration"] = "";
$a->strings["Summary"] = "";
$a->strings["Registered users"] = "";
@@ -548,6 +643,8 @@ $a->strings["System theme"] = "";
$a->strings["Maximum image size"] = "";
$a->strings["Register policy"] = "";
$a->strings["Register text"] = "";
+$a->strings["Accounts abandoned after x days"] = "";
+$a->strings["Will not waste system resources polling external sites for abandonded accounts. Enter 0 for no time limit."] = "";
$a->strings["Allowed friend domains"] = "";
$a->strings["Allowed email domains"] = "";
$a->strings["Block public"] = "";
@@ -560,7 +657,8 @@ $a->strings["Fullname check"] = "";
$a->strings["UTF-8 Regular expressions"] = "";
$a->strings["Show Community Page"] = "";
$a->strings["Enable OStatus support"] = "";
-$a->strings["Only allow Friendika contacts"] = "";
+$a->strings["Enable Diaspora support"] = "";
+$a->strings["Only allow Friendica contacts"] = "";
$a->strings["Verify SSL"] = "";
$a->strings["Proxy user"] = "";
$a->strings["Proxy URL"] = "";
@@ -582,8 +680,6 @@ $a->strings["Request date"] = "";
$a->strings["Email"] = "";
$a->strings["No registrations."] = "";
$a->strings["Deny"] = "";
-$a->strings["Block"] = "";
-$a->strings["Unblock"] = "";
$a->strings["Register date"] = "";
$a->strings["Last login"] = "";
$a->strings["Last item"] = "";
@@ -596,23 +692,33 @@ $a->strings["Disable"] = "";
$a->strings["Enable"] = "";
$a->strings["Toggle"] = "";
$a->strings["Settings"] = "";
+$a->strings["No themes found."] = "";
$a->strings["Log settings updated."] = "";
$a->strings["Clear"] = "";
$a->strings["Debugging"] = "";
$a->strings["Log file"] = "";
-$a->strings["Must be writable by web server. Relative to your Friendika index.php."] = "";
+$a->strings["Must be writable by web server. Relative to your Friendica top-level directory."] = "";
$a->strings["Log level"] = "";
$a->strings["Close"] = "";
$a->strings["FTP Host"] = "";
$a->strings["FTP Path"] = "";
$a->strings["FTP User"] = "";
$a->strings["FTP Password"] = "";
+$a->strings["Requested profile is not available."] = "";
$a->strings["Access to this profile has been restricted."] = "";
$a->strings["Tips for New Members"] = "";
+$a->strings["{0} wants to be your friend"] = "";
+$a->strings["{0} sent you a message"] = "";
+$a->strings["{0} requested registration"] = "";
+$a->strings["{0} commented %s's post"] = "";
+$a->strings["{0} liked %s's post"] = "";
+$a->strings["{0} disliked %s's post"] = "";
+$a->strings["{0} is now friends with %s"] = "";
+$a->strings["{0} posted"] = "";
+$a->strings["{0} tagged %s's post with #%s"] = "";
+$a->strings["{0} mentioned you in a post"] = "";
$a->strings["Login failed."] = "";
-$a->strings["Welcome "] = "";
-$a->strings["Please upload a profile photo."] = "";
-$a->strings["Welcome back "] = "";
+$a->strings["Connect URL missing."] = "";
$a->strings["This site is not configured to allow communications with other networks."] = "";
$a->strings["No compatible communication protocols or feeds were discovered."] = "";
$a->strings["The profile address specified does not provide adequate information."] = "";
@@ -622,11 +728,12 @@ $a->strings["The profile address specified belongs to a network which has been d
$a->strings["Limited profile. This person will be unable to receive direct/personal notifications from you."] = "";
$a->strings["Unable to retrieve contact information."] = "";
$a->strings["following"] = "";
+$a->strings["Common Friends"] = "";
+$a->strings["No friends in common."] = "";
$a->strings["Item has been removed."] = "";
-$a->strings["New mail received at "] = "";
$a->strings["Applications"] = "";
$a->strings["No installed applications."] = "";
-$a->strings["Search"] = "";
+$a->strings["Search This Site"] = "";
$a->strings["Profile not found."] = "";
$a->strings["Profile Name is required."] = "";
$a->strings["Profile updated."] = "";
@@ -674,15 +781,28 @@ $a->strings["Work/employment"] = "";
$a->strings["School/education"] = "";
$a->strings["This is your <strong>public</strong> profile.<br />It <strong>may</strong> be visible to anybody using the internet."] = "";
$a->strings["Age: "] = "";
-$a->strings["Profiles"] = "";
+$a->strings["Edit/Manage Profiles"] = "";
$a->strings["Change profile photo"] = "";
$a->strings["Create New Profile"] = "";
$a->strings["Profile Image"] = "";
$a->strings["visible to everybody"] = "";
$a->strings["Edit visibility"] = "";
+$a->strings["%1\$s tagged %2\$s's %3\$s with %4\$s"] = "";
+$a->strings["No potential page delegates located."] = "";
+$a->strings["Delegate Page Management"] = "";
+$a->strings["Delegates are able to manage all aspects of this account/page except for basic account settings. Please do not delegate your personal account to anybody that you do not trust completely."] = "";
+$a->strings["Existing Page Managers"] = "";
+$a->strings["Existing Page Delegates"] = "";
+$a->strings["Potential Delegates"] = "";
+$a->strings["Add"] = "";
+$a->strings["No entries."] = "";
+$a->strings["Friend Suggestions"] = "";
+$a->strings["No suggestions available. If this is a new site, please try again in 24 hours."] = "";
+$a->strings["Ignore/Hide"] = "";
$a->strings["Global Directory"] = "";
$a->strings["Normal site view"] = "";
-$a->strings["View all site entries"] = "";
+$a->strings["Admin - View all site entries"] = "";
+$a->strings["Find on this site"] = "";
$a->strings["Site Directory"] = "";
$a->strings["Gender: "] = "";
$a->strings["No entries (some entries may be hidden)."] = "";
@@ -712,6 +832,7 @@ $a->strings["No user record found for '%s' "] = "";
$a->strings["Our site encryption key is apparently messed up."] = "";
$a->strings["Empty site URL was provided or URL could not be decrypted by us."] = "";
$a->strings["Contact record was not found for you on our site."] = "";
+$a->strings["Site public key not available in contact record for URL %s."] = "";
$a->strings["The ID provided by your system is a duplicate on our system. It should work if you try again."] = "";
$a->strings["Unable to set your contact credentials on our system."] = "";
$a->strings["Unable to update your contact profile details on our system"] = "";
@@ -722,21 +843,60 @@ $a->strings["Facebook API key is missing."] = "";
$a->strings["Facebook Connect"] = "";
$a->strings["Install Facebook connector for this account."] = "";
$a->strings["Remove Facebook connector"] = "";
+$a->strings["Re-authenticate [This is necessary whenever your Facebook password is changed.]"] = "";
$a->strings["Post to Facebook by default"] = "";
-$a->strings["Link all your Facebook friends and conversations"] = "";
-$a->strings["Warning: Your Facebook privacy settings can not be imported."] = "";
-$a->strings["Linked Facebook items <strong>may</strong> be publicly visible, depending on your privacy settings for this website/account."] = "";
+$a->strings["Link all your Facebook friends and conversations on this website"] = "";
+$a->strings["Facebook conversations consist of your <em>profile wall</em> and your friend <em>stream</em>."] = "";
+$a->strings["On this website, your Facebook friend stream is only visible to you."] = "";
+$a->strings["The following settings determine the privacy of your Facebook profile wall on this website."] = "";
+$a->strings["On this website your Facebook profile wall conversations will only be visible to you"] = "";
+$a->strings["Do not import your Facebook profile wall conversations"] = "";
+$a->strings["If you choose to link conversations and leave both of these boxes unchecked, your Facebook profile wall will be merged with your profile wall on this website and your privacy settings on this website will be used to determine who may see the conversations."] = "";
+$a->strings["Comma separated applications to ignore"] = "";
$a->strings["Facebook"] = "";
$a->strings["Facebook Connector Settings"] = "";
$a->strings["Post to Facebook"] = "";
$a->strings["Post to Facebook cancelled because of multi-network access permission conflict."] = "";
$a->strings["Image: "] = "";
-$a->strings["View on Friendika"] = "";
+$a->strings["View on Friendica"] = "";
$a->strings["Facebook post failed. Queued for retry."] = "";
+$a->strings["link"] = "";
+$a->strings["%d person likes this"] = array(
+ 0 => "",
+ 1 => "",
+);
+$a->strings["%d person doesn't like this"] = array(
+ 0 => "",
+ 1 => "",
+);
$a->strings["Generate new key"] = "";
$a->strings["Widgets key"] = "";
$a->strings["Widgets available"] = "";
-$a->strings["Connect on Friendika!"] = "";
+$a->strings["Connect on Friendica!"] = "";
+$a->strings["YourLS Settings"] = "";
+$a->strings["URL: http://"] = "";
+$a->strings["Username:"] = "";
+$a->strings["Password:"] = "";
+$a->strings["Use SSL "] = "";
+$a->strings["yourls Settings saved."] = "";
+$a->strings["\"Not Safe For Work\" Settings"] = "";
+$a->strings["Enable NSFW filter"] = "";
+$a->strings["Comma separated words to treat as NSFW"] = "";
+$a->strings["Use /expression/ to provide regular expressions"] = "";
+$a->strings["NSFW Settings saved."] = "";
+$a->strings["%s - Click to open/close"] = "";
+$a->strings["Login"] = "";
+$a->strings["OpenID"] = "";
+$a->strings["Last users"] = "";
+$a->strings["Most active users"] = "";
+$a->strings["Last photos"] = "";
+$a->strings["Last likes"] = "";
+$a->strings["event"] = "";
+$a->strings["Allow to use your friendica id (%s) to connecto to external unhosted-enabled storage (like ownCloud). See <a href=\"http://www.w3.org/community/unhosted/wiki/RemoteStorage#WebFinger\">RemoteStorage WebFinger</a>"] = "";
+$a->strings["Template URL (with {category})"] = "";
+$a->strings["OAuth end-point"] = "";
+$a->strings["Api"] = "";
+$a->strings["Member since:"] = "";
$a->strings["Three Dimensional Tic-Tac-Toe"] = "";
$a->strings["3D Tic-Tac-Toe"] = "";
$a->strings["New game"] = "";
@@ -751,6 +911,19 @@ $a->strings["\"Cat\" game!"] = "";
$a->strings["I won!"] = "";
$a->strings["Randplace Settings"] = "";
$a->strings["Enable Randplace Plugin"] = "";
+$a->strings["Post to Drupal"] = "";
+$a->strings["Drupal Post Settings"] = "";
+$a->strings["Enable Drupal Post Plugin"] = "";
+$a->strings["Drupal username"] = "";
+$a->strings["Drupal password"] = "";
+$a->strings["Post Type - article,page,or blog"] = "";
+$a->strings["Drupal site URL"] = "";
+$a->strings["Drupal site uses clean URLS"] = "";
+$a->strings["Post to Drupal by default"] = "";
+$a->strings["Post from Friendica"] = "";
+$a->strings["Geonames settings updated."] = "";
+$a->strings["Geonames Settings"] = "";
+$a->strings["Enable Geonames Plugin"] = "";
$a->strings["Upload a file"] = "";
$a->strings["Drop files here to upload"] = "";
$a->strings["Failed"] = "";
@@ -758,6 +931,9 @@ $a->strings["No files were uploaded."] = "";
$a->strings["Uploaded file is empty"] = "";
$a->strings["File has an invalid extension, it should be one of "] = "";
$a->strings["Upload was cancelled, or server error encountered"] = "";
+$a->strings["OEmbed settings updated"] = "";
+$a->strings["Use OEmbed for YouTube videos"] = "";
+$a->strings["URL to embed:"] = "";
$a->strings["Impressum"] = "";
$a->strings["Site Owner"] = "";
$a->strings["Email Address"] = "";
@@ -765,9 +941,30 @@ $a->strings["Postal Address"] = "";
$a->strings["The impressum addon needs to be configured!<br />Please add at least the <tt>owner</tt> variable to your config file. For other variables please refer to the README file of the addon."] = "";
$a->strings["Site Owners Profile"] = "";
$a->strings["Notes"] = "";
-$a->strings["OEmbed settings updated"] = "";
-$a->strings["Use OEmbed for YouTube videos"] = "";
-$a->strings["URL to embed:"] = "";
+$a->strings["Report Bug"] = "";
+$a->strings["\"Blockem\" Settings"] = "";
+$a->strings["Comma separated profile URLS to block"] = "";
+$a->strings["BLOCKEM Settings saved."] = "";
+$a->strings["Blocked %s - Click to open/close"] = "";
+$a->strings["Unblock Author"] = "";
+$a->strings["Block Author"] = "";
+$a->strings["blockem settings updated"] = "";
+$a->strings[":-)"] = "";
+$a->strings[":-("] = "";
+$a->strings["lol"] = "";
+$a->strings["Quick Comment Settings"] = "";
+$a->strings["Enter quick comments, one per line"] = "";
+$a->strings["Quick Comment settings saved."] = "";
+$a->strings["Tile Server URL"] = "";
+$a->strings["A list of <a href=\"http://wiki.openstreetmap.org/wiki/TMS\" target=\"_blank\">public tile servers</a>"] = "";
+$a->strings["Default zoom"] = "";
+$a->strings["The default zoom level. (1:world, 18:highest)"] = "";
+$a->strings["Editplain settings updated."] = "";
+$a->strings["Editplain Settings"] = "";
+$a->strings["Disable richtext status editor"] = "";
+$a->strings["\"pageheader\" Settings"] = "";
+$a->strings["pageheader Settings saved."] = "";
+$a->strings["View Source"] = "";
$a->strings["Post to StatusNet"] = "";
$a->strings["Please contact your site administrator.<br />The provided API URL is not valid."] = "";
$a->strings["We could not contact the StatusNet API with the Path you entered."] = "";
@@ -776,7 +973,7 @@ $a->strings["StatusNet Posting Settings"] = "";
$a->strings["Globally Available StatusNet OAuthKeys"] = "";
$a->strings["There are preconfigured OAuth key pairs for some StatusNet servers available. If you are useing one of them, please use these credentials. If not feel free to connect to any other StatusNet instance (see below)."] = "";
$a->strings["Provide your own OAuth Credentials"] = "";
-$a->strings["No consumer key pair for StatusNet found. Register your Friendika Account as an desktop client on your StatusNet account, copy the consumer key pair here and enter the API base root.<br />Before you register your own OAuth key pair ask the administrator if there is already a key pair for this Friendika installation at your favorited StatusNet installation."] = "";
+$a->strings["No consumer key pair for StatusNet found. Register your Friendica Account as an desktop client on your StatusNet account, copy the consumer key pair here and enter the API base root.<br />Before you register your own OAuth key pair ask the administrator if there is already a key pair for this Friendica installation at your favorited StatusNet installation."] = "";
$a->strings["OAuth Consumer Key"] = "";
$a->strings["OAuth Consumer Secret"] = "";
$a->strings["Base API Path (remember the trailing /)"] = "";
@@ -788,34 +985,66 @@ $a->strings["Current StatusNet API is"] = "";
$a->strings["Cancel StatusNet Connection"] = "";
$a->strings["Currently connected to: "] = "";
$a->strings["If enabled all your <strong>public</strong> postings can be posted to the associated StatusNet account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry."] = "";
+$a->strings["<strong>Note</strong>: Due your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to StatusNet will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted."] = "";
$a->strings["Allow posting to StatusNet"] = "";
$a->strings["Send public postings to StatusNet by default"] = "";
$a->strings["Clear OAuth configuration"] = "";
$a->strings["API URL"] = "";
-$a->strings["Consumer Secret"] = "";
-$a->strings["Consumer Key"] = "";
+$a->strings["Post to Tumblr"] = "";
+$a->strings["Tumblr Post Settings"] = "";
+$a->strings["Enable Tumblr Post Plugin"] = "";
+$a->strings["Tumblr login"] = "";
+$a->strings["Tumblr password"] = "";
+$a->strings["Post to Tumblr by default"] = "";
+$a->strings["Numfriends settings updated."] = "";
+$a->strings["Numfriends Settings"] = "";
+$a->strings["How many contacts to display on profile sidebar"] = "";
+$a->strings["Post to Wordpress"] = "";
+$a->strings["WordPress Post Settings"] = "";
+$a->strings["Enable WordPress Post Plugin"] = "";
+$a->strings["WordPress username"] = "";
+$a->strings["WordPress password"] = "";
+$a->strings["WordPress API URL"] = "";
+$a->strings["Post to WordPress by default"] = "";
+$a->strings["\"Show more\" Settings"] = "";
+$a->strings["Enable Show More"] = "";
+$a->strings["Cutting posts after how much characters"] = "";
+$a->strings["Show More Settings saved."] = "";
+$a->strings["Show More"] = "";
+$a->strings["This website is tracked using the <a href='http://www.piwik.org'>Piwik</a> analytics tool."] = "";
+$a->strings["If you do not want that your visits are logged this way you <a href='%s'>can set a cookie to prevent Piwik from tracking further visits of the site</a> (opt-out)."] = "";
$a->strings["Piwik Base URL"] = "";
+$a->strings["Absolute path to your Piwik installation. (without protocol (http/s), with trailing slash)"] = "";
$a->strings["Site ID"] = "";
$a->strings["Show opt-out cookie link?"] = "";
+$a->strings["Asynchronous tracking"] = "";
$a->strings["Post to Twitter"] = "";
$a->strings["Twitter settings updated."] = "";
$a->strings["Twitter Posting Settings"] = "";
$a->strings["No consumer key pair for Twitter found. Please contact your site administrator."] = "";
-$a->strings["At this Friendika instance the Twitter plugin was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter."] = "";
+$a->strings["At this Friendica instance the Twitter plugin was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter."] = "";
$a->strings["Log in with Twitter"] = "";
$a->strings["Copy the PIN from Twitter here"] = "";
$a->strings["If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry."] = "";
+$a->strings["<strong>Note</strong>: Due your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted."] = "";
$a->strings["Allow posting to Twitter"] = "";
$a->strings["Send public postings to Twitter by default"] = "";
$a->strings["Consumer key"] = "";
$a->strings["Consumer secret"] = "";
+$a->strings["Post to Posterous"] = "";
+$a->strings["Posterous Post Settings"] = "";
+$a->strings["Enable Posterous Post Plugin"] = "";
+$a->strings["Posterous login"] = "";
+$a->strings["Posterous password"] = "";
+$a->strings["Post to Posterous by default"] = "";
$a->strings["Gender:"] = "";
-$a->strings["Birthday:"] = "";
$a->strings["j F, Y"] = "";
$a->strings["j F"] = "";
+$a->strings["Birthday:"] = "";
$a->strings["Age:"] = "";
-$a->strings["<span class=\"heart\">&hearts;</span> Status:"] = "";
+$a->strings["Status:"] = "";
$a->strings["Homepage:"] = "";
+$a->strings["Tags:"] = "";
$a->strings["Religion:"] = "";
$a->strings["About:"] = "";
$a->strings["Hobbies/Interests:"] = "";
@@ -839,6 +1068,12 @@ $a->strings["Twice daily"] = "";
$a->strings["Daily"] = "";
$a->strings["Weekly"] = "";
$a->strings["Monthly"] = "";
+$a->strings["OStatus"] = "";
+$a->strings["RSS/Atom"] = "";
+$a->strings["Zot!"] = "";
+$a->strings["LinkedIn"] = "";
+$a->strings["XMPP/IM"] = "";
+$a->strings["MySpace"] = "";
$a->strings["Male"] = "";
$a->strings["Female"] = "";
$a->strings["Currently Male"] = "";
@@ -892,9 +1127,10 @@ $a->strings["Uncertain"] = "";
$a->strings["Complicated"] = "";
$a->strings["Don't care"] = "";
$a->strings["Ask me"] = "";
-$a->strings["l F d, Y \\@ g:i A"] = "";
$a->strings["Starts:"] = "";
$a->strings["Finishes:"] = "";
+$a->strings["(no subject)"] = "";
+$a->strings["noreply"] = "";
$a->strings["prev"] = "";
$a->strings["first"] = "";
$a->strings["last"] = "";
@@ -904,6 +1140,7 @@ $a->strings["%d Contact"] = array(
0 => "",
1 => "",
);
+$a->strings["Search"] = "";
$a->strings["Monday"] = "";
$a->strings["Tuesday"] = "";
$a->strings["Wednesday"] = "";
@@ -925,15 +1162,29 @@ $a->strings["November"] = "";
$a->strings["December"] = "";
$a->strings["bytes"] = "";
$a->strings["Select an alternate language"] = "";
+$a->strings["default"] = "";
$a->strings["Sharing notification from Diaspora network"] = "";
+$a->strings["Attachments:"] = "";
+$a->strings["[Relayed] Comment authored by %s from network %s"] = "";
+$a->strings["Embedded content"] = "";
$a->strings["Embedding disabled"] = "";
-$a->strings["Create a new group"] = "";
+$a->strings["A deleted group with this name was revived. Existing item permissions <strong>may</strong> apply to this group and any future members. If this is not what you intended, please create another group with a different name."] = "";
$a->strings["Everybody"] = "";
+$a->strings["edit"] = "";
+$a->strings["Groups"] = "";
+$a->strings["Edit group"] = "";
+$a->strings["Create a new group"] = "";
$a->strings["Logout"] = "";
$a->strings["End this session"] = "";
-$a->strings["Login"] = "";
+$a->strings["Status"] = "";
+$a->strings["Your posts and conversations"] = "";
+$a->strings["Your profile page"] = "";
+$a->strings["Photos"] = "";
+$a->strings["Your photos"] = "";
+$a->strings["Your events"] = "";
+$a->strings["Personal notes"] = "";
+$a->strings["Your personal photos"] = "";
$a->strings["Sign in"] = "";
-$a->strings["Home"] = "";
$a->strings["Home Page"] = "";
$a->strings["Create an account"] = "";
$a->strings["Help and documentation"] = "";
@@ -943,18 +1194,34 @@ $a->strings["Search site content"] = "";
$a->strings["Conversations on this site"] = "";
$a->strings["Directory"] = "";
$a->strings["People directory"] = "";
-$a->strings["Network"] = "";
$a->strings["Conversations from your friends"] = "";
-$a->strings["Your posts and conversations"] = "";
-$a->strings["Notifications"] = "";
-$a->strings["Friend requests"] = "";
+$a->strings["Friend Requests"] = "";
+$a->strings["See all notifications"] = "";
+$a->strings["Mark all system notifications seen"] = "";
$a->strings["Private mail"] = "";
$a->strings["Manage"] = "";
$a->strings["Manage other pages"] = "";
+$a->strings["Profiles"] = "";
$a->strings["Manage/edit profiles"] = "";
$a->strings["Manage/edit friends and contacts"] = "";
$a->strings["Admin"] = "";
$a->strings["Site setup and configuration"] = "";
+$a->strings["Nothing new here"] = "";
+$a->strings["Add New Contact"] = "";
+$a->strings["Enter address or web location"] = "";
+$a->strings["Example: bob@example.com, http://example.com/barbara"] = "";
+$a->strings["Invite Friends"] = "";
+$a->strings["%d invitation available"] = array(
+ 0 => "",
+ 1 => "",
+);
+$a->strings["Find People"] = "";
+$a->strings["Enter name or interest"] = "";
+$a->strings["Connect/Follow"] = "";
+$a->strings["Examples: Robert Morgenstein, Fishing"] = "";
+$a->strings["Similar Interests"] = "";
+$a->strings["Networks"] = "";
+$a->strings["All Networks"] = "";
$a->strings["Logged out."] = "";
$a->strings["Miscellaneous"] = "";
$a->strings["year"] = "";
@@ -973,32 +1240,86 @@ $a->strings["minute"] = "";
$a->strings["minutes"] = "";
$a->strings["second"] = "";
$a->strings["seconds"] = "";
-$a->strings[" ago"] = "";
+$a->strings["%1\$d %2\$s ago"] = "";
$a->strings["From: "] = "";
+$a->strings["$1 wrote:"] = "";
$a->strings["Image/photo"] = "";
$a->strings["Cannot locate DNS info for database server '%s'"] = "";
+$a->strings["[no subject]"] = "";
$a->strings["Visible to everybody"] = "";
$a->strings["show"] = "";
$a->strings["don't show"] = "";
-$a->strings["(no subject)"] = "";
+$a->strings["Friendica Notification"] = "";
+$a->strings["Thank You,"] = "";
+$a->strings["%s Administrator"] = "";
+$a->strings["New mail received at %s"] = "";
+$a->strings["%s sent you a new private message at %s."] = "";
+$a->strings["%s sent you %s."] = "";
+$a->strings["a private message"] = "";
+$a->strings["Please visit %s to view and/or reply to your private messages."] = "";
+$a->strings["%s commented on an item at %s"] = "";
+$a->strings["%s commented on an item/conversation you have been following."] = "";
+$a->strings["%s commented in %s."] = "";
+$a->strings["a watched conversation"] = "";
+$a->strings["Please visit %s to view and/or reply to the conversation."] = "";
+$a->strings["%s posted to your profile wall at %s"] = "";
+$a->strings["%s posted to %s"] = "";
+$a->strings["your profile wall."] = "";
+$a->strings["%s tagged you at %s"] = "";
+$a->strings["%s %s."] = "";
+$a->strings["tagged you"] = "";
+$a->strings["%s tagged your post at %s"] = "";
+$a->strings["%s tagged %s"] = "";
+$a->strings["your post"] = "";
+$a->strings["Introduction received at %s"] = "";
+$a->strings["You've received an introduction from '%s' at %s"] = "";
+$a->strings["You've received %s from %s."] = "";
+$a->strings["an introduction"] = "";
+$a->strings["You may visit their profile at %s"] = "";
+$a->strings["Please visit %s to approve or reject the introduction."] = "";
+$a->strings["Friend suggestion received at %s"] = "";
+$a->strings["You've received a friend suggestion from '%s' at %s"] = "";
+$a->strings["You've received %s for %s from %s."] = "";
+$a->strings["a friend suggestion"] = "";
+$a->strings["Name:"] = "";
+$a->strings["Photo:"] = "";
+$a->strings["Please visit %s to approve or reject the suggestion."] = "";
+$a->strings["A new person is sharing with you at "] = "";
$a->strings["You have a new follower at "] = "";
-$a->strings["event"] = "";
-$a->strings["View %s's profile"] = "";
+$a->strings["view full size"] = "";
+$a->strings["image/photo"] = "";
+$a->strings["Welcome "] = "";
+$a->strings["Please upload a profile photo."] = "";
+$a->strings["Welcome back "] = "";
+$a->strings["View status"] = "";
+$a->strings["View profile"] = "";
+$a->strings["View photos"] = "";
+$a->strings["View recent"] = "";
+$a->strings["Send PM"] = "";
+$a->strings["post/item"] = "";
+$a->strings["%1\$s marked %2\$s's %3\$s as favorite"] = "";
+$a->strings["Select"] = "";
+$a->strings["View %s's profile @ %s"] = "";
$a->strings["%s from %s"] = "";
$a->strings["View in context"] = "";
-$a->strings["See more posts like this"] = "";
-$a->strings["See all %d comments"] = "";
-$a->strings["Select"] = "";
+$a->strings["%d comment"] = array(
+ 0 => "",
+ 1 => "",
+);
+$a->strings["show more"] = "";
+$a->strings["like"] = "";
+$a->strings["dislike"] = "";
+$a->strings["Share this"] = "";
+$a->strings["share"] = "";
+$a->strings["add star"] = "";
+$a->strings["remove star"] = "";
$a->strings["toggle star status"] = "";
+$a->strings["starred"] = "";
+$a->strings["add tag"] = "";
$a->strings["to"] = "";
$a->strings["Wall-to-Wall"] = "";
$a->strings["via Wall-To-Wall:"] = "";
$a->strings["Delete Selected Items"] = "";
-$a->strings["View status"] = "";
-$a->strings["View profile"] = "";
-$a->strings["View photos"] = "";
-$a->strings["View recent"] = "";
-$a->strings["Send PM"] = "";
$a->strings["%s likes this."] = "";
$a->strings["%s doesn't like this."] = "";
$a->strings["<span %1\$s>%2\$d people</span> like this."] = "";
@@ -1008,26 +1329,34 @@ $a->strings[", and %d other people"] = "";
$a->strings["%s like this."] = "";
$a->strings["%s don't like this."] = "";
$a->strings["Visible to <strong>everybody</strong>"] = "";
-$a->strings["Please enter a YouTube link:"] = "";
-$a->strings["Please enter a video(.ogg) link/URL:"] = "";
-$a->strings["Please enter an audio(.ogg) link/URL:"] = "";
+$a->strings["Please enter a video link/URL:"] = "";
+$a->strings["Please enter an audio link/URL:"] = "";
+$a->strings["Tag term:"] = "";
$a->strings["Where are you right now?"] = "";
$a->strings["Enter a title for this item"] = "";
-$a->strings["Set title"] = "";
+$a->strings["upload photo"] = "";
+$a->strings["attach file"] = "";
+$a->strings["web link"] = "";
+$a->strings["Insert video link"] = "";
+$a->strings["video link"] = "";
+$a->strings["Insert audio link"] = "";
+$a->strings["audio link"] = "";
+$a->strings["set location"] = "";
+$a->strings["clear location"] = "";
+$a->strings["permissions"] = "";
$a->strings["Delete this item?"] = "";
+$a->strings["show fewer"] = "";
$a->strings["Create a New Account"] = "";
$a->strings["Nickname or Email address: "] = "";
$a->strings["Password: "] = "";
-$a->strings["Nickname/Email/OpenID: "] = "";
-$a->strings["Password (if not OpenID): "] = "";
+$a->strings["Or login using OpenID: "] = "";
$a->strings["Forgot your password?"] = "";
-$a->strings["Connect"] = "";
-$a->strings[", "] = "";
-$a->strings["Status:"] = "";
+$a->strings["Edit profile"] = "";
$a->strings["g A l F d"] = "";
+$a->strings["F d"] = "";
$a->strings["Birthday Reminders"] = "";
$a->strings["Birthdays this week:"] = "";
-$a->strings["(Adjusted for local time)"] = "";
$a->strings["[today]"] = "";
-$a->strings["Not Found"] = "";
-$a->strings["Page not found."] = "";
+$a->strings["Event Reminders"] = "";
+$a->strings["Events this week:"] = "";
+$a->strings["[No description]"] = "";
diff --git a/view/admin_aside.tpl b/view/admin_aside.tpl
index a10c06f4e..4bf7ce9d3 100755
--- a/view/admin_aside.tpl
+++ b/view/admin_aside.tpl
@@ -15,6 +15,7 @@
<li class='admin link button $admin.site.2'><a href='$admin.site.0'>$admin.site.1</a></li>
<li class='admin link button $admin.users.2'><a href='$admin.users.0'>$admin.users.1</a><span id='pending-update' title='$h_pending'></span></li>
<li class='admin link button $admin.plugins.2'><a href='$admin.plugins.0'>$admin.plugins.1</a></li>
+ <li class='admin link button $admin.themes.2'><a href='$admin.themes.0'>$admin.themes.1</a></li>
</ul>
<ul class='admin linklist'>
diff --git a/view/admin_plugins.tpl b/view/admin_plugins.tpl
index bb1f5c90f..8367ff6a1 100755
--- a/view/admin_plugins.tpl
+++ b/view/admin_plugins.tpl
@@ -4,8 +4,10 @@
<ul id='pluginslist'>
{{ for $plugins as $p }}
<li class='plugin $p.1'>
- <a class='toggleplugin' href='$baseurl/admin/plugins/$p.0?a=t' title="{{if $p.1==on }}Disable{{ else }}Enable{{ endif }}" ><span class='icon $p.1'></span></a>
- <a href='$baseurl/admin/plugins/$p.0'><span class='name'>$p.2.name</span></a> - <span class="version">$p.2.version</span>
+ <a class='toggleplugin' href='$baseurl/admin/$function/$p.0?a=t' title="{{if $p.1==on }}Disable{{ else }}Enable{{ endif }}" ><span class='icon $p.1'></span></a>
+ <a href='$baseurl/admin/$function/$p.0'><span class='name'>$p.2.name</span></a> - <span class="version">$p.2.version</span>
+ {{ if $p.2.experimental }} $experimental {{ endif }}{{ if $p.2.unsupported }} $unsupported {{ endif }}
+
<div class='desc'>$p.2.description</div>
</li>
{{ endfor }}
diff --git a/view/admin_plugins_details.tpl b/view/admin_plugins_details.tpl
index f3c0685f5..d7147b20b 100755
--- a/view/admin_plugins_details.tpl
+++ b/view/admin_plugins_details.tpl
@@ -1,7 +1,7 @@
<div id='adminpage'>
<h1>$title - $page</h1>
- <p><span class='toggleplugin icon $status'></span> $info.name - $info.version : <a href="$baseurl/admin/plugins/$plugin/?a=t">$action</a></p>
+ <p><span class='toggleplugin icon $status'></span> $info.name - $info.version : <a href="$baseurl/admin/$function/$plugin/?a=t">$action</a></p>
<p>$info.description</p>
<p class="author">
@@ -13,7 +13,7 @@
{{ if $admin_form }}
<h3>$settings</h3>
- <form method="post" action="$baseurl/admin/plugins/$plugin/">
+ <form method="post" action="$baseurl/admin/$function/$plugin/">
$admin_form
</form>
{{ endif }}
diff --git a/view/contact_template.tpl b/view/contact_template.tpl
index d6f114d6e..f4c0670bf 100755
--- a/view/contact_template.tpl
+++ b/view/contact_template.tpl
@@ -17,8 +17,8 @@
</div>
<div class="contact-name" id="contact-entry-name-$contact.id" >$contact.name</div>
- <div class="contact-details" id="contact-entry-url-$contact.id" >$contact.item.url</div>
- <div class="contact-details" id="contact-entry-network-$contact.id" >$contact.item.network|network_to_name</div>
+ <div class="contact-details" id="contact-entry-url-$contact.id" >$contact.itemurl</div>
+ <div class="contact-details" id="contact-entry-network-$contact.id" >$contact.network</div>
</div>
diff --git a/view/de/messages.po b/view/de/messages.po
index 861f61b74..5573ddca0 100644
--- a/view/de/messages.po
+++ b/view/de/messages.po
@@ -5,7 +5,10 @@
# Translators:
# bavatar <tobias.diekershoff@gmx.net>, 2011.
# Erkan Yilmaz <erkan77@gmail.com>, 2011.
+# <friends@dostmusik.de>, 2012.
+# <greeneyedred@googlemail.com>, 2012.
# <hzuehl@phone-talk.de>, 2011.
+# <marmor69@web.de>, 2012.
# <tobias.diekershoff@gmx.net>, 2011, 2012.
# <transifex@zottel.net>, 2011, 2012.
# <ts+transifex@ml.tschlotfeldt.de>, 2011.
@@ -13,9 +16,9 @@ msgid ""
msgstr ""
"Project-Id-Version: friendica\n"
"Report-Msgid-Bugs-To: http://bugs.friendica.com/\n"
-"POT-Creation-Date: 2012-02-12 17:14-0800\n"
-"PO-Revision-Date: 2012-02-16 10:24+0000\n"
-"Last-Translator: bavatar <tobias.diekershoff@gmx.net>\n"
+"POT-Creation-Date: 2012-02-24 22:44-0800\n"
+"PO-Revision-Date: 2012-02-26 15:58+0000\n"
+"Last-Translator: marmor <marmor69@web.de>\n"
"Language-Team: German (http://www.transifex.net/projects/p/friendica/language/de/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -23,7 +26,7 @@ msgstr ""
"Language: de\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-#: ../../mod/oexchange.php:27
+#: ../../mod/oexchange.php:25
msgid "Post successful."
msgstr "Beitrag erfolgreich veröffentlicht."
@@ -41,24 +44,24 @@ msgid "Contact update failed."
msgstr "Konnte den Kontakt nicht aktualisieren."
#: ../../mod/crepair.php:115 ../../mod/wall_attach.php:43
-#: ../../mod/fsuggest.php:78 ../../mod/events.php:109 ../../mod/api.php:26
+#: ../../mod/fsuggest.php:78 ../../mod/events.php:110 ../../mod/api.php:26
#: ../../mod/api.php:31 ../../mod/photos.php:129 ../../mod/photos.php:865
#: ../../mod/editpost.php:10 ../../mod/install.php:171
#: ../../mod/notifications.php:62 ../../mod/contacts.php:125
#: ../../mod/settings.php:49 ../../mod/settings.php:404
#: ../../mod/settings.php:409 ../../mod/manage.php:86 ../../mod/network.php:6
#: ../../mod/notes.php:20 ../../mod/attach.php:33 ../../mod/group.php:19
-#: ../../mod/viewcontacts.php:21 ../../mod/register.php:36
-#: ../../mod/regmod.php:111 ../../mod/item.php:123 ../../mod/item.php:139
+#: ../../mod/viewcontacts.php:22 ../../mod/register.php:36
+#: ../../mod/regmod.php:111 ../../mod/item.php:124 ../../mod/item.php:140
#: ../../mod/profile_photo.php:19 ../../mod/profile_photo.php:137
#: ../../mod/profile_photo.php:148 ../../mod/profile_photo.php:159
#: ../../mod/message.php:9 ../../mod/message.php:46 ../../mod/allfriends.php:9
#: ../../mod/wall_upload.php:42 ../../mod/follow.php:8 ../../mod/common.php:9
-#: ../../mod/display.php:112 ../../mod/profiles.php:7
+#: ../../mod/display.php:130 ../../mod/profiles.php:7
#: ../../mod/profiles.php:229 ../../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:331
-#: ../../include/items.php:2907 ../../index.php:288
+#: ../../mod/dfrn_confirm.php:53 ../../addon/facebook/facebook.php:332
+#: ../../include/items.php:2968 ../../index.php:288
msgid "Permission denied."
msgstr "Zugriff verweigert."
@@ -88,7 +91,7 @@ msgid "Return to contact editor"
msgstr "Zurück zum Kontakteditor"
#: ../../mod/crepair.php:148 ../../mod/settings.php:455
-#: ../../mod/settings.php:481 ../../mod/admin.php:464 ../../mod/admin.php:473
+#: ../../mod/settings.php:481 ../../mod/admin.php:480 ../../mod/admin.php:489
msgid "Name"
msgstr "Name"
@@ -125,33 +128,37 @@ msgid "New photo from this URL"
msgstr "Neues Foto von dieser URL"
#: ../../mod/crepair.php:166 ../../mod/fsuggest.php:107
-#: ../../mod/events.php:333 ../../mod/photos.php:900 ../../mod/photos.php:958
+#: ../../mod/events.php:400 ../../mod/photos.php:900 ../../mod/photos.php:958
#: ../../mod/photos.php:1182 ../../mod/photos.php:1222
#: ../../mod/photos.php:1262 ../../mod/photos.php:1293
#: ../../mod/install.php:251 ../../mod/install.php:289
#: ../../mod/localtime.php:45 ../../mod/contacts.php:319
#: ../../mod/settings.php:453 ../../mod/settings.php:592
-#: ../../mod/settings.php:773 ../../mod/manage.php:109 ../../mod/group.php:84
-#: ../../mod/group.php:167 ../../mod/admin.php:296 ../../mod/admin.php:461
-#: ../../mod/admin.php:587 ../../mod/admin.php:652 ../../mod/profiles.php:375
-#: ../../mod/invite.php:106 ../../addon/facebook/facebook.php:410
-#: ../../addon/yourls/yourls.php:76 ../../addon/nsfw/nsfw.php:57
+#: ../../mod/settings.php:786 ../../mod/manage.php:109 ../../mod/group.php:84
+#: ../../mod/group.php:167 ../../mod/admin.php:312 ../../mod/admin.php:477
+#: ../../mod/admin.php:603 ../../mod/admin.php:769 ../../mod/admin.php:847
+#: ../../mod/profiles.php:375 ../../mod/invite.php:106
+#: ../../addon/facebook/facebook.php:411 ../../addon/yourls/yourls.php:76
+#: ../../addon/nsfw/nsfw.php:57
#: ../../addon/uhremotestorage/uhremotestorage.php:89
#: ../../addon/randplace/randplace.php:179 ../../addon/drpost/drpost.php:110
#: ../../addon/geonames/geonames.php:187 ../../addon/oembed.old/oembed.php:41
#: ../../addon/impressum/impressum.php:69 ../../addon/blockem/blockem.php:57
+#: ../../addon/qcomment/qcomment.php:60
+#: ../../addon/openstreetmap/openstreetmap.php:70
#: ../../addon/editplain/editplain.php:84 ../../addon/blackout/blackout.php:94
#: ../../addon/pageheader/pageheader.php:52
-#: ../../addon/statusnet/statusnet.php:280
-#: ../../addon/statusnet/statusnet.php:294
+#: ../../addon/statusnet/statusnet.php:273
+#: ../../addon/statusnet/statusnet.php:287
+#: ../../addon/statusnet/statusnet.php:313
#: ../../addon/statusnet/statusnet.php:320
-#: ../../addon/statusnet/statusnet.php:327
-#: ../../addon/statusnet/statusnet.php:349
-#: ../../addon/statusnet/statusnet.php:495 ../../addon/tumblr/tumblr.php:90
+#: ../../addon/statusnet/statusnet.php:345
+#: ../../addon/statusnet/statusnet.php:532 ../../addon/tumblr/tumblr.php:90
#: ../../addon/numfriends/numfriends.php:85 ../../addon/wppost/wppost.php:102
-#: ../../addon/piwik/piwik.php:81 ../../addon/twitter/twitter.php:180
-#: ../../addon/twitter/twitter.php:203 ../../addon/twitter/twitter.php:315
-#: ../../addon/posterous/posterous.php:90 ../../include/conversation.php:515
+#: ../../addon/showmore/showmore.php:48 ../../addon/piwik/piwik.php:89
+#: ../../addon/twitter/twitter.php:175 ../../addon/twitter/twitter.php:201
+#: ../../addon/twitter/twitter.php:355 ../../addon/posterous/posterous.php:90
+#: ../../include/conversation.php:542
msgid "Submit"
msgstr "Senden"
@@ -193,82 +200,82 @@ msgstr "Kontakte vorschlagen"
msgid "Suggest a friend for %s"
msgstr "Schlage %s einen Kontakt vor"
-#: ../../mod/events.php:61
+#: ../../mod/events.php:62
msgid "Event description and start time are required."
msgstr "Ereignis Beschreibung und Startzeit sind erforderlich."
-#: ../../mod/events.php:117 ../../include/nav.php:50 ../../boot.php:1345
+#: ../../mod/events.php:230
+msgid "l, F j"
+msgstr "l, F j"
+
+#: ../../mod/events.php:252
+msgid "Edit event"
+msgstr "Veranstaltung bearbeiten"
+
+#: ../../mod/events.php:272 ../../include/text.php:964
+msgid "link to source"
+msgstr "Link zum Originalbeitrag"
+
+#: ../../mod/events.php:296 ../../include/nav.php:50 ../../boot.php:1349
msgid "Events"
msgstr "Veranstaltungen"
-#: ../../mod/events.php:207
+#: ../../mod/events.php:297
msgid "Create New Event"
msgstr "Neue Veranstaltung erstellen"
-#: ../../mod/events.php:210
+#: ../../mod/events.php:298
msgid "Previous"
msgstr "Vorherige"
-#: ../../mod/events.php:213 ../../mod/install.php:210
+#: ../../mod/events.php:299 ../../mod/install.php:210
msgid "Next"
msgstr "Nächste"
-#: ../../mod/events.php:220
-msgid "l, F j"
-msgstr "l, F j"
-
-#: ../../mod/events.php:235
-msgid "Edit event"
-msgstr "Veranstaltung bearbeiten"
-
-#: ../../mod/events.php:237 ../../include/text.php:883
-msgid "link to source"
-msgstr "Link zum Originalbeitrag"
-
-#: ../../mod/events.php:305
+#: ../../mod/events.php:371
msgid "hour:minute"
msgstr "Stunde:Minute"
-#: ../../mod/events.php:314
+#: ../../mod/events.php:380
msgid "Event details"
msgstr "Veranstaltungsdetails"
-#: ../../mod/events.php:315
+#: ../../mod/events.php:381
#, php-format
msgid "Format is %s %s. Starting date and Description are required."
msgstr "Format ist %s %s. Anfangsdatum und Beschreibung sind notwendig."
-#: ../../mod/events.php:316
+#: ../../mod/events.php:383
msgid "Event Starts:"
msgstr "Veranstaltungsbeginn:"
-#: ../../mod/events.php:319
+#: ../../mod/events.php:386
msgid "Finish date/time is not known or not relevant"
msgstr "Enddatum/-zeit ist nicht bekannt oder nicht relevant"
-#: ../../mod/events.php:321
+#: ../../mod/events.php:388
msgid "Event Finishes:"
msgstr "Veranstaltungsende:"
-#: ../../mod/events.php:324
+#: ../../mod/events.php:391
msgid "Adjust for viewer timezone"
msgstr "An Zeitzone des Betrachters anpassen"
-#: ../../mod/events.php:326
+#: ../../mod/events.php:393
msgid "Description:"
msgstr "Beschreibung"
-#: ../../mod/events.php:328 ../../include/event.php:37
-#: ../../include/bb2diaspora.php:271 ../../boot.php:976
+#: ../../mod/events.php:395 ../../include/event.php:37
+#: ../../include/bb2diaspora.php:290 ../../boot.php:980
msgid "Location:"
msgstr "Ort:"
-#: ../../mod/events.php:330
+#: ../../mod/events.php:397
msgid "Share this event"
msgstr "Veranstaltung teilen"
#: ../../mod/tagrm.php:11 ../../mod/tagrm.php:94
-#: ../../mod/dfrn_request.php:685 ../../mod/settings.php:454
+#: ../../mod/dfrn_request.php:686 ../../mod/settings.php:454
#: ../../mod/settings.php:480 ../../addon/js_upload/js_upload.php:45
msgid "Cancel"
msgstr "Abbrechen"
@@ -312,24 +319,24 @@ msgid ""
" and/or create new posts for you?"
msgstr "Möchtest du dieser Anwendung den Zugriff auf deine Beiträge und Kontakte sowie die Erstellung neuer Beiträge in deinem Namen gestatten?"
-#: ../../mod/api.php:105 ../../mod/dfrn_request.php:675
+#: ../../mod/api.php:105 ../../mod/dfrn_request.php:676
#: ../../mod/settings.php:681 ../../mod/settings.php:687
#: ../../mod/settings.php:695 ../../mod/settings.php:699
#: ../../mod/settings.php:704 ../../mod/settings.php:710
-#: ../../mod/settings.php:716 ../../mod/settings.php:763
-#: ../../mod/settings.php:764 ../../mod/settings.php:765
-#: ../../mod/settings.php:766 ../../mod/register.php:524
+#: ../../mod/settings.php:716 ../../mod/settings.php:776
+#: ../../mod/settings.php:777 ../../mod/settings.php:778
+#: ../../mod/settings.php:779 ../../mod/register.php:524
#: ../../mod/profiles.php:357
msgid "Yes"
msgstr "Ja"
-#: ../../mod/api.php:106 ../../mod/dfrn_request.php:676
+#: ../../mod/api.php:106 ../../mod/dfrn_request.php:677
#: ../../mod/settings.php:681 ../../mod/settings.php:687
#: ../../mod/settings.php:695 ../../mod/settings.php:699
#: ../../mod/settings.php:704 ../../mod/settings.php:710
-#: ../../mod/settings.php:716 ../../mod/settings.php:763
-#: ../../mod/settings.php:764 ../../mod/settings.php:765
-#: ../../mod/settings.php:766 ../../mod/register.php:525
+#: ../../mod/settings.php:716 ../../mod/settings.php:776
+#: ../../mod/settings.php:777 ../../mod/settings.php:778
+#: ../../mod/settings.php:779 ../../mod/register.php:525
#: ../../mod/profiles.php:358
msgid "No"
msgstr "Nein"
@@ -384,8 +391,8 @@ msgstr "wurde getaggt in einem"
#: ../../mod/photos.php:528 ../../mod/like.php:127 ../../mod/tagger.php:70
#: ../../addon/communityhome/communityhome.php:163
-#: ../../include/diaspora.php:1587 ../../include/conversation.php:31
-#: ../../include/conversation.php:104
+#: ../../include/diaspora.php:1600 ../../include/conversation.php:53
+#: ../../include/conversation.php:126
msgid "photo"
msgstr "Foto"
@@ -393,7 +400,7 @@ msgstr "Foto"
msgid "by"
msgstr "von"
-#: ../../mod/photos.php:631 ../../addon/js_upload/js_upload.php:312
+#: ../../mod/photos.php:631 ../../addon/js_upload/js_upload.php:315
msgid "Image exceeds size limit of "
msgstr "Die Bildgröße übersteigt das Limit von "
@@ -412,8 +419,8 @@ msgid "Image upload failed."
msgstr "Hochladen des Bildes gescheitert."
#: ../../mod/photos.php:759 ../../mod/community.php:16
-#: ../../mod/dfrn_request.php:624 ../../mod/viewcontacts.php:16
-#: ../../mod/display.php:7 ../../mod/search.php:71 ../../mod/directory.php:31
+#: ../../mod/dfrn_request.php:625 ../../mod/viewcontacts.php:17
+#: ../../mod/display.php:7 ../../mod/search.php:71 ../../mod/directory.php:33
msgid "Public access denied."
msgstr "Öffentlicher Zugriff verweigert."
@@ -473,7 +480,7 @@ msgstr "Foto bearbeiten"
msgid "Use as profile photo"
msgstr "Als Profilbild verwenden"
-#: ../../mod/photos.php:1078 ../../include/conversation.php:450
+#: ../../mod/photos.php:1078 ../../include/conversation.php:472
msgid "Private Message"
msgstr "Private Nachricht"
@@ -506,44 +513,44 @@ msgid ""
"Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping"
msgstr "Beispiel: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping"
-#: ../../mod/photos.php:1200 ../../include/conversation.php:497
+#: ../../mod/photos.php:1200 ../../include/conversation.php:519
msgid "I like this (toggle)"
msgstr "Ich mag das (toggle)"
-#: ../../mod/photos.php:1201 ../../include/conversation.php:498
+#: ../../mod/photos.php:1201 ../../include/conversation.php:520
msgid "I don't like this (toggle)"
msgstr "Ich mag das nicht (toggle)"
-#: ../../mod/photos.php:1202 ../../include/conversation.php:889
+#: ../../mod/photos.php:1202 ../../include/conversation.php:914
msgid "Share"
msgstr "Teilen"
-#: ../../mod/photos.php:1203 ../../mod/editpost.php:100
+#: ../../mod/photos.php:1203 ../../mod/editpost.php:104
#: ../../mod/message.php:155 ../../mod/message.php:296
-#: ../../include/conversation.php:321 ../../include/conversation.php:652
-#: ../../include/conversation.php:906
+#: ../../include/conversation.php:343 ../../include/conversation.php:677
+#: ../../include/conversation.php:931
msgid "Please wait"
msgstr "Bitte warten"
#: ../../mod/photos.php:1219 ../../mod/photos.php:1259
-#: ../../mod/photos.php:1290 ../../include/conversation.php:512
+#: ../../mod/photos.php:1290 ../../include/conversation.php:539
msgid "This is you"
msgstr "Das bist du"
#: ../../mod/photos.php:1221 ../../mod/photos.php:1261
-#: ../../mod/photos.php:1292 ../../include/conversation.php:514
-#: ../../boot.php:443
+#: ../../mod/photos.php:1292 ../../include/conversation.php:541
+#: ../../boot.php:447
msgid "Comment"
msgstr "Kommentar"
-#: ../../mod/photos.php:1223 ../../mod/editpost.php:119
-#: ../../include/conversation.php:516 ../../include/conversation.php:924
+#: ../../mod/photos.php:1223 ../../mod/editpost.php:123
+#: ../../include/conversation.php:543 ../../include/conversation.php:949
msgid "Preview"
msgstr "Vorschau"
#: ../../mod/photos.php:1320 ../../mod/settings.php:513
-#: ../../mod/group.php:154 ../../mod/admin.php:468
-#: ../../include/conversation.php:280 ../../include/conversation.php:536
+#: ../../mod/group.php:154 ../../mod/admin.php:484
+#: ../../include/conversation.php:302 ../../include/conversation.php:563
msgid "Delete"
msgstr "Löschen"
@@ -603,70 +610,70 @@ msgstr "Keine Plugins/Erweiterungen/Apps installiert"
msgid "Item not found"
msgstr "Beitrag nicht gefunden"
-#: ../../mod/editpost.php:32
+#: ../../mod/editpost.php:36
msgid "Edit post"
msgstr "Beitrag bearbeiten"
-#: ../../mod/editpost.php:76 ../../include/conversation.php:875
+#: ../../mod/editpost.php:80 ../../include/conversation.php:900
msgid "Post to Email"
msgstr "An E-Mail senden"
-#: ../../mod/editpost.php:91 ../../mod/settings.php:512
-#: ../../include/conversation.php:523
+#: ../../mod/editpost.php:95 ../../mod/settings.php:512
+#: ../../include/conversation.php:550
msgid "Edit"
msgstr "Bearbeiten"
-#: ../../mod/editpost.php:92 ../../mod/message.php:153
-#: ../../mod/message.php:294 ../../include/conversation.php:890
+#: ../../mod/editpost.php:96 ../../mod/message.php:153
+#: ../../mod/message.php:294 ../../include/conversation.php:915
msgid "Upload photo"
msgstr "Foto hochladen"
-#: ../../mod/editpost.php:93 ../../include/conversation.php:892
+#: ../../mod/editpost.php:97 ../../include/conversation.php:917
msgid "Attach file"
msgstr "Datei anhängen"
-#: ../../mod/editpost.php:94 ../../mod/message.php:154
-#: ../../mod/message.php:295 ../../include/conversation.php:894
+#: ../../mod/editpost.php:98 ../../mod/message.php:154
+#: ../../mod/message.php:295 ../../include/conversation.php:919
msgid "Insert web link"
msgstr "Weblink einfügen"
-#: ../../mod/editpost.php:95
+#: ../../mod/editpost.php:99
msgid "Insert YouTube video"
msgstr "YouTube-Video einfügen"
-#: ../../mod/editpost.php:96
+#: ../../mod/editpost.php:100
msgid "Insert Vorbis [.ogg] video"
msgstr "Vorbis [.ogg] Video einfügen"
-#: ../../mod/editpost.php:97
+#: ../../mod/editpost.php:101
msgid "Insert Vorbis [.ogg] audio"
msgstr "Vorbis [.ogg] Audio einfügen"
-#: ../../mod/editpost.php:98 ../../include/conversation.php:900
+#: ../../mod/editpost.php:102 ../../include/conversation.php:925
msgid "Set your location"
msgstr "Deinen Standort festlegen"
-#: ../../mod/editpost.php:99 ../../include/conversation.php:902
+#: ../../mod/editpost.php:103 ../../include/conversation.php:927
msgid "Clear browser location"
msgstr "Browser-Standort leeren"
-#: ../../mod/editpost.php:101 ../../include/conversation.php:907
+#: ../../mod/editpost.php:105 ../../include/conversation.php:932
msgid "Permission settings"
msgstr "Berechtigungseinstellungen"
-#: ../../mod/editpost.php:109 ../../include/conversation.php:916
+#: ../../mod/editpost.php:113 ../../include/conversation.php:941
msgid "CC: email addresses"
msgstr "Cc:-E-Mail-Addressen"
-#: ../../mod/editpost.php:110 ../../include/conversation.php:917
+#: ../../mod/editpost.php:114 ../../include/conversation.php:942
msgid "Public post"
msgstr "Öffentlicher Beitrag"
-#: ../../mod/editpost.php:113 ../../include/conversation.php:905
+#: ../../mod/editpost.php:117 ../../include/conversation.php:930
msgid "Set title"
msgstr "Titel setzen"
-#: ../../mod/editpost.php:114 ../../include/conversation.php:919
+#: ../../mod/editpost.php:118 ../../include/conversation.php:944
msgid "Example: bob@example.com, mary@example.com"
msgstr "Z.B.: bob@example.com, mary@example.com"
@@ -775,68 +782,68 @@ msgstr "Bitte bestätige deine Kontaktanfrage bei %s."
msgid "Confirm"
msgstr "Bestätigen"
-#: ../../mod/dfrn_request.php:581 ../../include/items.php:2443
+#: ../../mod/dfrn_request.php:582 ../../include/items.php:2504
msgid "[Name Withheld]"
msgstr "[Name Zurückgehalten]"
-#: ../../mod/dfrn_request.php:665
+#: ../../mod/dfrn_request.php:666
#, php-format
msgid ""
"Diaspora members: Please do not use this form. Instead, enter \"%s\" into "
"your Diaspora search bar."
msgstr "Diaspora-User: Bitte nicht dieses Formular benutzen! Gebt statt dessen \"%s\" in der Diaspora-Suchleiste ein."
-#: ../../mod/dfrn_request.php:668
+#: ../../mod/dfrn_request.php:669
msgid ""
"Please enter your 'Identity Address' from one of the following supported "
"social networks:"
msgstr "Bitte gib die Adresse deines Profils in einem der unterstützten sozialen Netzwerke an:"
-#: ../../mod/dfrn_request.php:671
+#: ../../mod/dfrn_request.php:672
msgid "Friend/Connection Request"
msgstr "Freundschafts-/Kontaktanfrage"
-#: ../../mod/dfrn_request.php:672
+#: ../../mod/dfrn_request.php:673
msgid ""
"Examples: jojo@demo.friendica.com, http://demo.friendica.com/profile/jojo, "
"testuser@identi.ca"
msgstr "Beispiele: jojo@demo.friendica.com, http://demo.friendica.com/profile/jojo, testuser@identi.ca"
-#: ../../mod/dfrn_request.php:673
+#: ../../mod/dfrn_request.php:674
msgid "Please answer the following:"
msgstr "Bitte beantworte folgende Fragen:"
-#: ../../mod/dfrn_request.php:674
+#: ../../mod/dfrn_request.php:675
#, php-format
msgid "Does %s know you?"
msgstr "Kennt %s dich?"
-#: ../../mod/dfrn_request.php:677
+#: ../../mod/dfrn_request.php:678
msgid "Add a personal note:"
msgstr "Eine persönliche Notiz anfügen:"
-#: ../../mod/dfrn_request.php:679 ../../include/contact_selectors.php:76
+#: ../../mod/dfrn_request.php:680 ../../include/contact_selectors.php:76
msgid "Friendica"
msgstr "Friendica"
-#: ../../mod/dfrn_request.php:680
+#: ../../mod/dfrn_request.php:681
msgid "StatusNet/Federated Social Web"
msgstr "StatusNet/Federated Social Web"
-#: ../../mod/dfrn_request.php:681 ../../mod/settings.php:548
+#: ../../mod/dfrn_request.php:682 ../../mod/settings.php:548
#: ../../include/contact_selectors.php:80
msgid "Diaspora"
msgstr "Diaspora"
-#: ../../mod/dfrn_request.php:682
+#: ../../mod/dfrn_request.php:683
msgid "- please share from your own site as noted above"
msgstr "- bitte fange von Deiner eigenen Seite aus zu teilen an"
-#: ../../mod/dfrn_request.php:683
+#: ../../mod/dfrn_request.php:684
msgid "Your Identity Address:"
msgstr "Adresse deines Profils:"
-#: ../../mod/dfrn_request.php:684
+#: ../../mod/dfrn_request.php:685
msgid "Submit Request"
msgstr "Anfrage abschicken"
@@ -1086,7 +1093,7 @@ msgid "Errors encountered creating database tables."
msgstr "Fehler aufgetreten während der Erzeugung der Datenbanktabellen."
#: ../../mod/localtime.php:12 ../../include/event.php:11
-#: ../../include/bb2diaspora.php:249
+#: ../../include/bb2diaspora.php:268
msgid "l F d, Y \\@ g:i A"
msgstr "l F d, Y \\@ g:i A"
@@ -1132,7 +1139,7 @@ msgid "is interested in:"
msgstr "ist interessiert an:"
#: ../../mod/match.php:58 ../../mod/suggest.php:59
-#: ../../include/contact_widgets.php:9 ../../boot.php:926
+#: ../../include/contact_widgets.php:9 ../../boot.php:930
msgid "Connect"
msgstr "Verbinden"
@@ -1157,165 +1164,187 @@ msgstr "Willkommen zu %s"
msgid "Invalid request identifier."
msgstr "Invalid request identifier."
-#: ../../mod/notifications.php:35 ../../mod/notifications.php:152
-#: ../../mod/notifications.php:198
+#: ../../mod/notifications.php:35 ../../mod/notifications.php:157
+#: ../../mod/notifications.php:203
msgid "Discard"
msgstr "Verwerfen"
-#: ../../mod/notifications.php:47 ../../mod/notifications.php:151
-#: ../../mod/notifications.php:197 ../../mod/contacts.php:302
+#: ../../mod/notifications.php:47 ../../mod/notifications.php:156
+#: ../../mod/notifications.php:202 ../../mod/contacts.php:302
#: ../../mod/contacts.php:345
msgid "Ignore"
msgstr "Ignorieren"
-#: ../../mod/notifications.php:71 ../../include/nav.php:109
+#: ../../mod/notifications.php:71
+msgid "System"
+msgstr "System"
+
+#: ../../mod/notifications.php:76 ../../include/nav.php:109
msgid "Network"
msgstr "Netzwerk"
-#: ../../mod/notifications.php:76 ../../mod/network.php:177
+#: ../../mod/notifications.php:81 ../../mod/network.php:177
msgid "Personal"
msgstr "Persönlich"
-#: ../../mod/notifications.php:81 ../../include/nav.php:73
+#: ../../mod/notifications.php:86 ../../include/nav.php:73
#: ../../include/nav.php:111
msgid "Home"
msgstr "Pinnwand"
-#: ../../mod/notifications.php:86 ../../include/nav.php:117
+#: ../../mod/notifications.php:91 ../../include/nav.php:117
msgid "Introductions"
msgstr "Kontaktanfragen"
-#: ../../mod/notifications.php:91 ../../mod/message.php:76
-#: ../../include/nav.php:123
+#: ../../mod/notifications.php:96 ../../mod/message.php:76
+#: ../../include/nav.php:124
msgid "Messages"
msgstr "Nachrichten"
-#: ../../mod/notifications.php:110
+#: ../../mod/notifications.php:115
msgid "Show Ignored Requests"
msgstr "Zeige ignorierte Anfragen"
-#: ../../mod/notifications.php:110
+#: ../../mod/notifications.php:115
msgid "Hide Ignored Requests"
msgstr "Verberge ignorierte Anfragen"
-#: ../../mod/notifications.php:136 ../../mod/notifications.php:182
+#: ../../mod/notifications.php:141 ../../mod/notifications.php:187
msgid "Notification type: "
msgstr "Benachrichtigungstyp: "
-#: ../../mod/notifications.php:137
+#: ../../mod/notifications.php:142
msgid "Friend Suggestion"
msgstr "Kontaktvorschlag"
-#: ../../mod/notifications.php:139
+#: ../../mod/notifications.php:144
#, php-format
msgid "suggested by %s"
msgstr "vorgeschlagen von %s"
-#: ../../mod/notifications.php:144 ../../mod/notifications.php:191
+#: ../../mod/notifications.php:149 ../../mod/notifications.php:196
#: ../../mod/contacts.php:350
msgid "Hide this contact from others"
msgstr "Verberge diesen Kontakt vor anderen"
-#: ../../mod/notifications.php:145 ../../mod/notifications.php:192
+#: ../../mod/notifications.php:150 ../../mod/notifications.php:197
msgid "Post a new friend activity"
msgstr "Neue-Kontakt Nachricht senden"
-#: ../../mod/notifications.php:145 ../../mod/notifications.php:192
+#: ../../mod/notifications.php:150 ../../mod/notifications.php:197
msgid "if applicable"
msgstr "falls anwendbar"
-#: ../../mod/notifications.php:148 ../../mod/notifications.php:195
-#: ../../mod/admin.php:466
+#: ../../mod/notifications.php:153 ../../mod/notifications.php:200
+#: ../../mod/admin.php:482
msgid "Approve"
msgstr "Genehmigen"
-#: ../../mod/notifications.php:168
+#: ../../mod/notifications.php:173
msgid "Claims to be known to you: "
msgstr "Behauptet dich zu kennen: "
-#: ../../mod/notifications.php:168
+#: ../../mod/notifications.php:173
msgid "yes"
msgstr "ja"
-#: ../../mod/notifications.php:168
+#: ../../mod/notifications.php:173
msgid "no"
msgstr "nein"
-#: ../../mod/notifications.php:175
+#: ../../mod/notifications.php:180
msgid "Approve as: "
msgstr "Genehmigen als: "
-#: ../../mod/notifications.php:176
+#: ../../mod/notifications.php:181
msgid "Friend"
msgstr "Freund"
-#: ../../mod/notifications.php:177
+#: ../../mod/notifications.php:182
msgid "Sharer"
msgstr "Teilenden"
-#: ../../mod/notifications.php:177
+#: ../../mod/notifications.php:182
msgid "Fan/Admirer"
msgstr "Fan/Verehrer"
-#: ../../mod/notifications.php:183
+#: ../../mod/notifications.php:188
msgid "Friend/Connect Request"
msgstr "Kontakt-/Freundschaftsanfrage"
-#: ../../mod/notifications.php:183
+#: ../../mod/notifications.php:188
msgid "New Follower"
msgstr "Neuer Bewunderer"
-#: ../../mod/notifications.php:204
+#: ../../mod/notifications.php:209
msgid "No introductions."
msgstr "Keine Kontaktanfragen."
-#: ../../mod/notifications.php:207 ../../mod/notifications.php:293
-#: ../../mod/notifications.php:388 ../../mod/notifications.php:469
-#: ../../include/nav.php:118
+#: ../../mod/notifications.php:212 ../../include/nav.php:118
msgid "Notifications"
msgstr "Benachrichtigungen"
-#: ../../mod/notifications.php:244 ../../mod/notifications.php:339
-#: ../../mod/notifications.php:426
+#: ../../mod/notifications.php:249 ../../mod/notifications.php:374
+#: ../../mod/notifications.php:461
#, php-format
msgid "%s liked %s's post"
msgstr "%s mag %ss Beitrag"
-#: ../../mod/notifications.php:253 ../../mod/notifications.php:348
-#: ../../mod/notifications.php:435
+#: ../../mod/notifications.php:258 ../../mod/notifications.php:383
+#: ../../mod/notifications.php:470
#, php-format
msgid "%s disliked %s's post"
msgstr "%s mag %ss Beitrag nicht"
-#: ../../mod/notifications.php:267 ../../mod/notifications.php:362
-#: ../../mod/notifications.php:449
+#: ../../mod/notifications.php:272 ../../mod/notifications.php:397
+#: ../../mod/notifications.php:484
#, php-format
msgid "%s is now friends with %s"
msgstr "%s ist jetzt mit %s befreundet"
-#: ../../mod/notifications.php:274 ../../mod/notifications.php:369
+#: ../../mod/notifications.php:279 ../../mod/notifications.php:404
#, php-format
msgid "%s created a new post"
msgstr "%s hat einen neuen Beitrag erstellt"
-#: ../../mod/notifications.php:275 ../../mod/notifications.php:370
-#: ../../mod/notifications.php:458
+#: ../../mod/notifications.php:280 ../../mod/notifications.php:405
+#: ../../mod/notifications.php:493
#, php-format
msgid "%s commented on %s's post"
msgstr "%s hat %ss Beitrag kommentiert"
-#: ../../mod/notifications.php:289
+#: ../../mod/notifications.php:294
msgid "No more network notifications."
msgstr "Keine weiteren Netzwerk-Benachrichtigungen."
-#: ../../mod/notifications.php:384
+#: ../../mod/notifications.php:298
+msgid "Network Notifications"
+msgstr "Netzwerk Benachrichtigungen"
+
+#: ../../mod/notifications.php:324 ../../mod/notify.php:59
+msgid "No more system notifications."
+msgstr "Keine weiteren System Benachrichtigungen."
+
+#: ../../mod/notifications.php:328 ../../mod/notify.php:63
+msgid "System Notifications"
+msgstr "System Benachrichtigungen"
+
+#: ../../mod/notifications.php:419
msgid "No more personal notifications."
msgstr "Keine weiteren persönlichen Benachrichtigungen"
-#: ../../mod/notifications.php:465
+#: ../../mod/notifications.php:423
+msgid "Personal Notifications"
+msgstr "Persönliche Benachrichtigungen"
+
+#: ../../mod/notifications.php:500
msgid "No more home notifications."
msgstr "Keine weiteren Pinnwand-Benachrichtigungen"
+#: ../../mod/notifications.php:504
+msgid "Home Notifications"
+msgstr "Pinnwand Benachrichtigungen"
+
#: ../../mod/contacts.php:63 ../../mod/contacts.php:143
msgid "Could not access contact record."
msgstr "Konnte nicht auf die Kontaktdaten zugreifen."
@@ -1338,11 +1367,11 @@ msgstr "Kontakt wurde wieder freigegeben"
#: ../../mod/contacts.php:179
msgid "Contact has been ignored"
-msgstr "Der Kontakt wurde ignoriert"
+msgstr "Kontakt wurde ignoriert"
#: ../../mod/contacts.php:179
msgid "Contact has been unignored"
-msgstr "Kontakt wurde ignoriert"
+msgstr "Kontakt wird nicht mehr ignoriert"
#: ../../mod/contacts.php:200
msgid "stopped following"
@@ -1404,12 +1433,12 @@ msgid "View all contacts"
msgstr "Alle Kontakte anzeigen"
#: ../../mod/contacts.php:297 ../../mod/contacts.php:344
-#: ../../mod/admin.php:470
+#: ../../mod/admin.php:486
msgid "Unblock"
msgstr "Entsperren"
#: ../../mod/contacts.php:297 ../../mod/contacts.php:344
-#: ../../mod/admin.php:469
+#: ../../mod/admin.php:485
msgid "Block"
msgstr "Sperren"
@@ -1444,8 +1473,8 @@ msgstr "Kontakt Informationen / Notizen"
msgid "Edit contact notes"
msgstr "Notizen zum Kontakt bearbiten"
-#: ../../mod/contacts.php:328 ../../mod/contacts.php:458
-#: ../../mod/viewcontacts.php:61
+#: ../../mod/contacts.php:328 ../../mod/contacts.php:497
+#: ../../mod/viewcontacts.php:60
#, php-format
msgid "Visit %s's profile [%s]"
msgstr "Besuche %ss Profil [%s]"
@@ -1478,7 +1507,7 @@ msgstr "letzte Aktualisierung:"
msgid "Update public posts"
msgstr "Öffentliche Beiträge aktualisieren"
-#: ../../mod/contacts.php:341 ../../mod/admin.php:701
+#: ../../mod/contacts.php:341 ../../mod/admin.php:896
msgid "Update now"
msgstr "Jetzt aktualisieren"
@@ -1495,52 +1524,60 @@ msgid ""
"Replies/likes to your public posts <strong>may</strong> still be visible"
msgstr "Antworten/Likes auf deine öffentlichen Beiträge <strong>könnten</strong> weiterhin sichtbar sein"
-#: ../../mod/contacts.php:387 ../../include/nav.php:131
-msgid "Contacts"
-msgstr "Kontakte"
+#: ../../mod/contacts.php:399 ../../mod/group.php:194
+msgid "All Contacts"
+msgstr "Alle Kontakte"
-#: ../../mod/contacts.php:389
-msgid "Show Unblocked Contacts"
-msgstr "Nicht geblockte Kontakte anzeigen"
+#: ../../mod/contacts.php:404
+msgid "Unblocked Contacts"
+msgstr "Nicht blockierte Kontakte"
-#: ../../mod/contacts.php:389
-msgid "Show Blocked Contacts"
-msgstr "Blockierte Kontakte anzeigen"
+#: ../../mod/contacts.php:410
+msgid "Blocked Contacts"
+msgstr "Blockierte Kontakte"
-#: ../../mod/contacts.php:391
-msgid "Show All Contacts"
-msgstr "Alle Kontakte anzeigen"
+#: ../../mod/contacts.php:416
+msgid "Ignored Contacts"
+msgstr "Ignorierte Kontakte"
-#: ../../mod/contacts.php:393
-msgid "Search your contacts"
-msgstr "Suche in deinen Kontakten"
+#: ../../mod/contacts.php:422
+msgid "Hidden Contacts"
+msgstr "Verborgene Kontakte"
-#: ../../mod/contacts.php:394 ../../mod/directory.php:65
-msgid "Finding: "
-msgstr "Funde: "
-
-#: ../../mod/contacts.php:395 ../../mod/directory.php:67
-#: ../../include/contact_widgets.php:34
-msgid "Find"
-msgstr "Finde"
-
-#: ../../mod/contacts.php:434
+#: ../../mod/contacts.php:473
msgid "Mutual Friendship"
msgstr "Beidseitige Freundschaft"
-#: ../../mod/contacts.php:438
+#: ../../mod/contacts.php:477
msgid "is a fan of yours"
msgstr "ist ein Fan von dir"
-#: ../../mod/contacts.php:442
+#: ../../mod/contacts.php:481
msgid "you are a fan of"
msgstr "du bist Fan von"
-#: ../../mod/contacts.php:459 ../../include/Contact.php:135
-#: ../../include/conversation.php:748
+#: ../../mod/contacts.php:498 ../../include/Contact.php:135
+#: ../../include/conversation.php:773
msgid "Edit contact"
msgstr "Kontakt bearbeiten"
+#: ../../mod/contacts.php:518 ../../include/nav.php:132
+msgid "Contacts"
+msgstr "Kontakte"
+
+#: ../../mod/contacts.php:522
+msgid "Search your contacts"
+msgstr "Suche in deinen Kontakten"
+
+#: ../../mod/contacts.php:523 ../../mod/directory.php:67
+msgid "Finding: "
+msgstr "Funde: "
+
+#: ../../mod/contacts.php:524 ../../mod/directory.php:69
+#: ../../include/contact_widgets.php:34
+msgid "Find"
+msgstr "Finde"
+
#: ../../mod/lostpass.php:16
msgid "No valid account found."
msgstr "Kein gültiger Account gefunden."
@@ -1557,7 +1594,7 @@ msgstr "Anfrage zum Zurücksetzen des Passworts auf %s erhalten"
#: ../../mod/lostpass.php:44 ../../mod/lostpass.php:106
#: ../../mod/register.php:380 ../../mod/register.php:434
#: ../../mod/regmod.php:54 ../../mod/dfrn_confirm.php:716
-#: ../../include/items.php:2452
+#: ../../include/items.php:2513
msgid "Administrator"
msgstr "Administrator"
@@ -1567,7 +1604,7 @@ msgid ""
"Password reset failed."
msgstr "Anfrage konnte nicht verifiziert werden. (Eventuell hast du bereits ähnliche Anfrage gestellt.) Zurücksetzen des Passworts gescheitert."
-#: ../../mod/lostpass.php:82 ../../boot.php:719
+#: ../../mod/lostpass.php:82 ../../boot.php:723
msgid "Password Reset"
msgstr "Passwort zurücksetzen"
@@ -1615,7 +1652,7 @@ msgstr "Zurücksetzen"
msgid "Missing some important data!"
msgstr "Wichtige Daten fehlen!"
-#: ../../mod/settings.php:73 ../../mod/settings.php:479 ../../mod/admin.php:62
+#: ../../mod/settings.php:73 ../../mod/settings.php:479 ../../mod/admin.php:75
msgid "Update"
msgstr "Aktualisierungen"
@@ -1657,15 +1694,16 @@ msgstr " Keine gültige E-Mail."
#: ../../mod/settings.php:283
msgid " Cannot change to that email."
-msgstr " Cannot change to that email."
+msgstr "Ändern der E-Mail nicht möglich. "
-#: ../../mod/settings.php:351 ../../addon/facebook/facebook.php:320
-#: ../../addon/impressum/impressum.php:64 ../../addon/piwik/piwik.php:94
-#: ../../addon/twitter/twitter.php:310
+#: ../../mod/settings.php:351 ../../addon/facebook/facebook.php:321
+#: ../../addon/impressum/impressum.php:64
+#: ../../addon/openstreetmap/openstreetmap.php:80
+#: ../../addon/piwik/piwik.php:105 ../../addon/twitter/twitter.php:350
msgid "Settings updated."
msgstr "Einstellungen aktualisiert."
-#: ../../mod/settings.php:415 ../../include/nav.php:129
+#: ../../mod/settings.php:415 ../../include/nav.php:130
msgid "Account settings"
msgstr "Account Einstellungen"
@@ -1691,12 +1729,12 @@ msgid "Add application"
msgstr "Programm hinzufügen"
#: ../../mod/settings.php:456 ../../mod/settings.php:482
-#: ../../addon/statusnet/statusnet.php:489
+#: ../../addon/statusnet/statusnet.php:526
msgid "Consumer Key"
msgstr "Consumer Key"
#: ../../mod/settings.php:457 ../../mod/settings.php:483
-#: ../../addon/statusnet/statusnet.php:488
+#: ../../addon/statusnet/statusnet.php:525
msgid "Consumer Secret"
msgstr "Consumer Secret"
@@ -1807,7 +1845,7 @@ msgstr "Reply-to Adresse:"
msgid "Send public posts to all email contacts:"
msgstr "Sende öffentliche Beiträge an alle E-Mail-Kontakte:"
-#: ../../mod/settings.php:648 ../../mod/admin.php:126 ../../mod/admin.php:443
+#: ../../mod/settings.php:648 ../../mod/admin.php:142 ../../mod/admin.php:459
msgid "Normal Account"
msgstr "Normaler Account"
@@ -1815,7 +1853,7 @@ msgstr "Normaler Account"
msgid "This account is a normal personal profile"
msgstr "Dieser Account ist ein normales persönliches Profil"
-#: ../../mod/settings.php:652 ../../mod/admin.php:127 ../../mod/admin.php:444
+#: ../../mod/settings.php:652 ../../mod/admin.php:143 ../../mod/admin.php:460
msgid "Soapbox Account"
msgstr "Sandkasten-Account"
@@ -1823,7 +1861,7 @@ msgstr "Sandkasten-Account"
msgid "Automatically approve all connection/friend requests as read-only fans"
msgstr "Freundschaftsanfragen werden automatisch als Nurlese-Fans akzeptiert"
-#: ../../mod/settings.php:656 ../../mod/admin.php:128 ../../mod/admin.php:445
+#: ../../mod/settings.php:656 ../../mod/admin.php:144 ../../mod/admin.php:461
msgid "Community/Celebrity Account"
msgstr "Gemeinschafts/Promi-Account"
@@ -1832,7 +1870,7 @@ msgid ""
"Automatically approve all connection/friend requests as read-write fans"
msgstr "Freundschaftsanfragen werden automatisch als Lese-und-Schreib-Fans akzeptiert"
-#: ../../mod/settings.php:660 ../../mod/admin.php:129 ../../mod/admin.php:446
+#: ../../mod/settings.php:660 ../../mod/admin.php:145 ../../mod/admin.php:462
msgid "Automatic Friend Account"
msgstr "Automatischer Freundesaccount"
@@ -1880,159 +1918,159 @@ msgstr "Erlaube uns dich als potentiellen Kontakt für neue Mitglieder vorzuschl
msgid "Profile is <strong>not published</strong>."
msgstr "Profil ist <strong>nicht veröffentlicht</strong>."
-#: ../../mod/settings.php:744 ../../mod/profile_photo.php:206
+#: ../../mod/settings.php:757 ../../mod/profile_photo.php:206
msgid "or"
msgstr "oder"
-#: ../../mod/settings.php:749
+#: ../../mod/settings.php:762
msgid "Your Identity Address is"
msgstr "Die Adresse deines Profils lautet:"
-#: ../../mod/settings.php:760
+#: ../../mod/settings.php:773
msgid "Automatically expire posts after this many days:"
msgstr "Beiträge verfallen automatisch nach dieser Anzahl von Tagen"
-#: ../../mod/settings.php:760
+#: ../../mod/settings.php:773
msgid "If empty, posts will not expire. Expired posts will be deleted"
msgstr "Wenn leer verfallen Beiträge nie automatisch. Verfallene Beiträge werden gelöscht."
-#: ../../mod/settings.php:761
+#: ../../mod/settings.php:774
msgid "Advanced expiration settings"
msgstr "Erweiterte Verfallseinstellungen"
-#: ../../mod/settings.php:762
+#: ../../mod/settings.php:775
msgid "Advanced Expiration"
msgstr "Erweitertes Verfallen"
-#: ../../mod/settings.php:763
+#: ../../mod/settings.php:776
msgid "Expire posts:"
msgstr "Beiträge verfallen lassen:"
-#: ../../mod/settings.php:764
+#: ../../mod/settings.php:777
msgid "Expire personal notes:"
msgstr "Persönliche Notizen verfallen lassen:"
-#: ../../mod/settings.php:765
+#: ../../mod/settings.php:778
msgid "Expire starred posts:"
msgstr "Markierte Beiträge verfallen lassen:"
-#: ../../mod/settings.php:766
+#: ../../mod/settings.php:779
msgid "Expire photos:"
msgstr "Fotos verfallen lassen:"
-#: ../../mod/settings.php:771
+#: ../../mod/settings.php:784
msgid "Account Settings"
msgstr "Account-Einstellungen"
-#: ../../mod/settings.php:779
+#: ../../mod/settings.php:792
msgid "Password Settings"
msgstr "Passwort-Einstellungen"
-#: ../../mod/settings.php:780
+#: ../../mod/settings.php:793
msgid "New Password:"
msgstr "Neues Passwort:"
-#: ../../mod/settings.php:781
+#: ../../mod/settings.php:794
msgid "Confirm:"
msgstr "Bestätigen:"
-#: ../../mod/settings.php:781
+#: ../../mod/settings.php:794
msgid "Leave password fields blank unless changing"
msgstr "Lass die Passwort-Felder leer, außer du willst das Passwort ändern"
-#: ../../mod/settings.php:785
+#: ../../mod/settings.php:798
msgid "Basic Settings"
msgstr "Grundeinstellungen"
-#: ../../mod/settings.php:786 ../../include/profile_advanced.php:15
+#: ../../mod/settings.php:799 ../../include/profile_advanced.php:15
msgid "Full Name:"
msgstr "Kompletter Name:"
-#: ../../mod/settings.php:787
+#: ../../mod/settings.php:800
msgid "Email Address:"
msgstr "Emailadresse:"
-#: ../../mod/settings.php:788
+#: ../../mod/settings.php:801
msgid "Your Timezone:"
msgstr "Deine Zeitzone:"
-#: ../../mod/settings.php:789
+#: ../../mod/settings.php:802
msgid "Default Post Location:"
msgstr "Standardstandort:"
-#: ../../mod/settings.php:790
+#: ../../mod/settings.php:803
msgid "Use Browser Location:"
msgstr "Verwende den Standort des Browsers:"
-#: ../../mod/settings.php:791
+#: ../../mod/settings.php:804
msgid "Display Theme:"
msgstr "Theme:"
-#: ../../mod/settings.php:792
+#: ../../mod/settings.php:805
msgid "Update browser every xx seconds"
msgstr "Browser alle xx Sekunden aktualisieren"
-#: ../../mod/settings.php:792
+#: ../../mod/settings.php:805
msgid "Minimum of 10 seconds, no maximum"
msgstr "Minimal 10 Sekunden, kein Maximum"
-#: ../../mod/settings.php:794
+#: ../../mod/settings.php:807
msgid "Security and Privacy Settings"
msgstr "Sicherheits- und Privatsphäre-Einstellungen"
-#: ../../mod/settings.php:796
+#: ../../mod/settings.php:809
msgid "Maximum Friend Requests/Day:"
msgstr "Maximale Anzahl von Freundschaftsanfragen/Tag:"
-#: ../../mod/settings.php:796
+#: ../../mod/settings.php:809
msgid "(to prevent spam abuse)"
msgstr "(um SPAM zu vermeiden)"
-#: ../../mod/settings.php:797
+#: ../../mod/settings.php:810
msgid "Default Post Permissions"
msgstr "Standard-Zugriffsrechte für Beiträge"
-#: ../../mod/settings.php:798
+#: ../../mod/settings.php:811
msgid "(click to open/close)"
msgstr "(klicke zum öffnen/schließen)"
-#: ../../mod/settings.php:813
+#: ../../mod/settings.php:826
msgid "Notification Settings"
msgstr "Benachrichtigungseinstellungen"
-#: ../../mod/settings.php:814
+#: ../../mod/settings.php:827
msgid "Send a notification email when:"
msgstr "Benachrichtigungs-E-Mail senden wenn:"
-#: ../../mod/settings.php:815
+#: ../../mod/settings.php:828
msgid "You receive an introduction"
msgstr "Du eine Kontaktanfrage erhältst"
-#: ../../mod/settings.php:816
+#: ../../mod/settings.php:829
msgid "Your introductions are confirmed"
msgstr "Eine deiner Kontaktanfragen akzeptiert wurde"
-#: ../../mod/settings.php:817
+#: ../../mod/settings.php:830
msgid "Someone writes on your profile wall"
-msgstr "Jemand etwas auf deine Pinnwand schreibt"
+msgstr "Jemand schreibt etwas auf deine Pinnwand"
-#: ../../mod/settings.php:818
+#: ../../mod/settings.php:831
msgid "Someone writes a followup comment"
-msgstr "Jemand auch einen Kommentar verfasst"
+msgstr "Jemand verfasst auch einen Kommentar"
-#: ../../mod/settings.php:819
+#: ../../mod/settings.php:832
msgid "You receive a private message"
-msgstr "Du eine private Nachricht erhältst"
+msgstr "Du erhältst eine private Nachricht"
-#: ../../mod/settings.php:820
+#: ../../mod/settings.php:833
msgid "You receive a friend suggestion"
msgstr "Du eine Empfehlung erhältst"
-#: ../../mod/settings.php:821
+#: ../../mod/settings.php:834
msgid "You are tagged in a post"
msgstr "Du wurdest in einem Beitrag erwähnt"
-#: ../../mod/settings.php:824
+#: ../../mod/settings.php:837
msgid "Advanced Page Settings"
msgstr "Erweiterte Seiten-Einstellungen"
@@ -2098,31 +2136,31 @@ msgstr[1] "Warnung: Diese Gruppe beinhaltet %s Personen aus unsicheren Netzwerke
msgid "Private messages to this group are at risk of public disclosure."
msgstr "Private Nachrichten an diese Gruppe könnten an die Öffentlichkeit geraten."
-#: ../../mod/network.php:304
+#: ../../mod/network.php:300
msgid "No such group"
msgstr "Es gibt keine solche Gruppe"
-#: ../../mod/network.php:315
+#: ../../mod/network.php:311
msgid "Group is empty"
msgstr "Gruppe ist leer"
-#: ../../mod/network.php:319
+#: ../../mod/network.php:315
msgid "Group: "
msgstr "Gruppe: "
-#: ../../mod/network.php:329
+#: ../../mod/network.php:325
msgid "Contact: "
msgstr "Kontakt: "
-#: ../../mod/network.php:331
+#: ../../mod/network.php:327
msgid "Private messages to this person are at risk of public disclosure."
msgstr "Private Nachrichten an diese Person könnten an die Öffentlichkeit gelangen."
-#: ../../mod/network.php:336
+#: ../../mod/network.php:332
msgid "Invalid contact."
msgstr "Ungültiger Kontakt."
-#: ../../mod/notes.php:44 ../../boot.php:1350
+#: ../../mod/notes.php:44 ../../boot.php:1354
msgid "Personal Notes"
msgstr "Persönliche Notizen"
@@ -2141,14 +2179,17 @@ msgstr "Checkliste für neue Mitglieder"
#: ../../mod/newmember.php:12
msgid ""
"We would like to offer some tips and links to help make your experience "
-"enjoyable. Click any item to visit the relevant page."
-msgstr "Wir möchten dir einige Tipps und Links anbieten, um deine Erfahrung mit Friendica so angenehm wie möglich zu machen. Klicke einfach einen Aspekt an, um weitere Informationen zu erhalten."
+"enjoyable. Click any item to visit the relevant page. A link to this page "
+"will be visible from your home page for two weeks after your initial "
+"registration and then will quietly disappear."
+msgstr "Wir möchten Dir einige Tipps und Links anbieten, die Dir helfen könnten, den Einstieg angenehmer zu machen. Klicke auf ein Element, um die entsprechende Seite zu besuchen. Ein Link zu dieser Seite hier bleibt sichtbar über Deine Pinnwand für zwei Wochen nach dem Registrierungsdatum und wird dann verschwinden."
#: ../../mod/newmember.php:16
msgid ""
"On your <em>Settings</em> page - change your initial password. Also make a "
-"note of your Identity Address. This will be useful in making friends."
-msgstr "Ändere dein anfängliches Passwort auf der <em>Einstellungen</em> Seite. Bei dieser Gelegenheit solltest du dir die Adresse deines Profils merken, diese wird benötigt um mit Anderen in Kontakt zu treten."
+"note of your Identity Address. This looks just like an email address - and "
+"will be useful in making friends on the free social web."
+msgstr "Ändere bitte unter <em>Einstellungen</em> Dein Passwort. Außerdem merke Dir Deine Indentifikations Adresse. Diese sieht aus wie eine E-Mail Adresse und wird benötig um Freunschaften mit anderen im Friendica Netzwerk zu schliessen."
#: ../../mod/newmember.php:18
msgid ""
@@ -2171,49 +2212,64 @@ msgid ""
"and we will (optionally) import all your Facebook friends and conversations."
msgstr "Richte die Verbindung zu Facebook ein, wenn du im Augenblick ein Facebook Konto hast und (optional) deine Facebook Freunde und Unterhaltungen importieren willst."
-#: ../../mod/newmember.php:28
+#: ../../mod/newmember.php:25
+msgid ""
+"<em>If</em> this is your own personal server, installing the Facebook addon "
+"may ease your transition to the free social web."
+msgstr "<em>Wenn</em> dies dein privater Server ist könnte die Installation des Facebook Connectors deinen Umzug ins freie Soziale Netz angenehmer gestalten."
+
+#: ../../mod/newmember.php:30
msgid ""
"Enter your email access information on your Connector Settings page if you "
"wish to import and interact with friends or mailing lists from your email "
"INBOX"
msgstr "Gib deine E-Mail-Zugangsinformationen auf der Connector-Einstellungsseite ein, falls du E-Mails aus deinem Posteingang importieren und mit Freunden und Mailinglisten interagieren willlst."
-#: ../../mod/newmember.php:30
+#: ../../mod/newmember.php:32
msgid ""
"Edit your <strong>default</strong> profile to your liking. Review the "
"settings for hiding your list of friends and hiding the profile from unknown"
" visitors."
msgstr "Editiere dein <strong>Standard</strong> Profil nach deinen Vorlieben. Überprüfe die Einstellungen zum Verbergen deiner Freundesliste vor unbekannten Betrachtern des Profils."
-#: ../../mod/newmember.php:32
+#: ../../mod/newmember.php:34
msgid ""
"Set some public keywords for your default profile which describe your "
"interests. We may be able to find other people with similar interests and "
"suggest friendships."
msgstr "Trage ein paar öffentliche Stichwörter in dein Standardprofil ein, die deine Interessen beschreiben. Eventuell sind wir in der Lage Leute zu finden, die deine Interessen teilen und können dir dann Kontakte vorschlagen."
-#: ../../mod/newmember.php:34
+#: ../../mod/newmember.php:36
msgid ""
"Your Contacts page is your gateway to managing friendships and connecting "
"with friends on other networks. Typically you enter their address or site "
"URL in the <em>Add New Contact</em> dialog."
msgstr "Die Kontakte-Seite ist die Einstiegsseite, von der aus du Kontakte verwalten und dich mit Freunden in anderen Netzwerken verbinden kannst. Normalerweise gibst du dazu einfach ihre Adresse oder die URL der Seite im Kasten <em>Neuen Kontakt hinzufügen</em> ein."
-#: ../../mod/newmember.php:36
+#: ../../mod/newmember.php:38
msgid ""
"The Directory page lets you find other people in this network or other "
"federated sites. Look for a <em>Connect</em> or <em>Follow</em> link on "
"their profile page. Provide your own Identity Address if requested."
msgstr "Ãœber die Verzeichnisseite kannst du andere Personen auf diesem Server oder anderen verteilten Seiten finden. Halte nach einem <em>Verbinden</em> oder <em>Folgen</em> Link auf deren Profilseiten Ausschau und gib deine eigene Profiladresse an falls du danach gefragt wirst."
-#: ../../mod/newmember.php:38
+#: ../../mod/newmember.php:40
+msgid ""
+"On the side panel of the Contacts page are several tools to find new "
+"friends. We can match people by interest, look up people by name or "
+"interest, and provide suggestions based on network relationships. On a brand"
+" new site, friend suggestions will usually begin to be populated within 24 "
+"hours."
+msgstr "Im seitlichen Bedienfeld der Kontakte-Seite gibt es diverse Werkzeuge, um neue Freunde zu finden. Wir können Menschen mit den gleichen Interessen finden, anhand von Namen oder Interessen suchen oder aber aufgrund vorhandener Kontakte neue Freunde vorschlagen.\nAuf einer brandneuen - soeben erstellten - Seite starten die Kontaktvorschläge innerhalb von 24 Stunden."
+
+#: ../../mod/newmember.php:42
msgid ""
"Once you have made some friends, organize them into private conversation "
"groups from the sidebar of your Contacts page and then you can interact with"
" each group privately on your Network page."
msgstr "Sobald du einige Freunde gefunden hast, organisiere sie in Gruppen zur privaten Kommunikation im Seitenmenü der Kontakte-Seite. Du kannst dann mit jeder dieser Gruppen von der Netzwerkseite aus privat interagieren."
-#: ../../mod/newmember.php:40
+#: ../../mod/newmember.php:44
msgid ""
"Our <strong>help</strong> pages may be consulted for detail on other program"
" features and resources."
@@ -2275,10 +2331,6 @@ msgstr "Gruppeneditor"
msgid "Members"
msgstr "Mitglieder"
-#: ../../mod/group.php:194
-msgid "All Contacts"
-msgstr "Alle Kontakte"
-
#: ../../mod/profperm.php:25 ../../mod/profperm.php:55
msgid "Invalid profile identifier."
msgstr "Ungültiger Profil-Bezeichner"
@@ -2289,7 +2341,7 @@ msgstr "Editor für die Profil-Sichtbarkeit"
#: ../../mod/profperm.php:103 ../../include/profile_advanced.php:7
#: ../../include/profile_advanced.php:76 ../../include/nav.php:48
-#: ../../boot.php:1332
+#: ../../boot.php:1336
msgid "Profile"
msgstr "Profil"
@@ -2301,14 +2353,14 @@ msgstr "Sichtbar für"
msgid "All Contacts (with secure profile access)"
msgstr "Alle Kontakte (mit gesichertem Profilzugriff)"
-#: ../../mod/viewcontacts.php:25 ../../include/text.php:578
-msgid "View Contacts"
-msgstr "Kontakte anzeigen"
-
-#: ../../mod/viewcontacts.php:40
+#: ../../mod/viewcontacts.php:39
msgid "No contacts."
msgstr "Keine Kontakte."
+#: ../../mod/viewcontacts.php:73 ../../include/text.php:578
+msgid "View Contacts"
+msgstr "Kontakte anzeigen"
+
#: ../../mod/register.php:62
msgid "An invitation is required."
msgstr "Du benötigst eine Einladung."
@@ -2361,7 +2413,7 @@ msgstr "Dieser Spitzname ist bereits vergeben. Bitte wähle einen anderen."
#: ../../mod/register.php:170
msgid "SERIOUS ERROR: Generation of security keys failed."
-msgstr "SERIOUS ERROR: Generation of security keys failed."
+msgstr "FATALER FEHLER: Sicherheitsschlüssel konnten nicht erzeugt werden."
#: ../../mod/register.php:238
msgid "An error occurred during registration. Please try again."
@@ -2432,7 +2484,7 @@ msgstr "Mitgliedschaft auf dieser Seite ist nur nach vorheriger Einladung mögli
msgid "Your invitation ID: "
msgstr "ID deiner Einladung: "
-#: ../../mod/register.php:540 ../../mod/admin.php:297
+#: ../../mod/register.php:540 ../../mod/admin.php:313
msgid "Registration"
msgstr "Registrierung"
@@ -2455,7 +2507,7 @@ msgstr "Wähle einen Spitznamen für dein Profil. Dieser muss mit einem Buchstab
msgid "Choose a nickname: "
msgstr "Spitznamen wählen: "
-#: ../../mod/register.php:554 ../../include/nav.php:77 ../../boot.php:689
+#: ../../mod/register.php:554 ../../include/nav.php:77 ../../boot.php:693
msgid "Register"
msgstr "Registrieren"
@@ -2464,30 +2516,31 @@ msgid "People Search"
msgstr "Personen Suche"
#: ../../mod/like.php:127 ../../mod/tagger.php:70
-#: ../../addon/facebook/facebook.php:1091
+#: ../../addon/facebook/facebook.php:1092
#: ../../addon/communityhome/communityhome.php:158
#: ../../addon/communityhome/communityhome.php:167
-#: ../../include/diaspora.php:1587 ../../include/conversation.php:26
-#: ../../include/conversation.php:35 ../../include/conversation.php:99
-#: ../../include/conversation.php:108
+#: ../../include/diaspora.php:1600 ../../include/conversation.php:48
+#: ../../include/conversation.php:57 ../../include/conversation.php:121
+#: ../../include/conversation.php:130
msgid "status"
msgstr "Status"
-#: ../../mod/like.php:144 ../../addon/facebook/facebook.php:1095
+#: ../../mod/like.php:144 ../../addon/facebook/facebook.php:1096
#: ../../addon/communityhome/communityhome.php:172
-#: ../../include/diaspora.php:1603 ../../include/conversation.php:43
+#: ../../include/diaspora.php:1616 ../../include/conversation.php:65
#, php-format
msgid "%1$s likes %2$s's %3$s"
msgstr "%1$s mag %2$ss %3$s"
-#: ../../mod/like.php:146 ../../include/conversation.php:46
+#: ../../mod/like.php:146 ../../include/conversation.php:68
#, php-format
msgid "%1$s doesn't like %2$s's %3$s"
msgstr "%1$s mag %2$ss %3$s nicht"
-#: ../../mod/notice.php:15 ../../mod/viewsrc.php:15 ../../mod/admin.php:111
-#: ../../mod/admin.php:502 ../../mod/display.php:28 ../../mod/display.php:116
-#: ../../mod/viewd.php:14 ../../include/items.php:2819
+#: ../../mod/notice.php:15 ../../mod/viewsrc.php:15 ../../mod/admin.php:127
+#: ../../mod/admin.php:518 ../../mod/admin.php:694 ../../mod/display.php:29
+#: ../../mod/display.php:134 ../../mod/viewd.php:14
+#: ../../include/items.php:2880
msgid "Item not found."
msgstr "Beitrag nicht gefunden."
@@ -2508,43 +2561,43 @@ msgstr "Registrierung für %s wurde zurückgezogen"
msgid "Please login."
msgstr "Bitte melde dich an."
-#: ../../mod/item.php:88
+#: ../../mod/item.php:89
msgid "Unable to locate original post."
msgstr "Konnte den Originalbeitrag nicht finden."
-#: ../../mod/item.php:248
+#: ../../mod/item.php:249
msgid "Empty post discarded."
msgstr "Leerer Beitrag wurde verworfen."
-#: ../../mod/item.php:350 ../../mod/wall_upload.php:81
+#: ../../mod/item.php:351 ../../mod/wall_upload.php:81
#: ../../mod/wall_upload.php:90 ../../mod/wall_upload.php:97
#: ../../include/message.php:143
msgid "Wall Photos"
msgstr "Pinnwand-Bilder"
-#: ../../mod/item.php:827
+#: ../../mod/item.php:830
msgid "System error. Post not saved."
msgstr "Systemfehler. Beitrag konnte nicht gespeichert werden."
-#: ../../mod/item.php:852
+#: ../../mod/item.php:855
#, php-format
msgid ""
"This message was sent to you by %s, a member of the Friendica social "
"network."
msgstr "Diese Nachricht wurde dir von %s geschickt, einem Mitglied des Sozialen Netzwerks Friendica."
-#: ../../mod/item.php:854
+#: ../../mod/item.php:857
#, php-format
msgid "You may visit them online at %s"
msgstr "Du kannst sie online unter %s besuchen"
-#: ../../mod/item.php:855
+#: ../../mod/item.php:858
msgid ""
"Please contact the sender by replying to this post if you do not wish to "
"receive these messages."
msgstr "Falls du diese Beiträge nicht erhalten möchtest, kontaktiere bitte den Autor, indem du auf diese Nachricht antwortest."
-#: ../../mod/item.php:857
+#: ../../mod/item.php:860
#, php-format
msgid "%s posted an update."
msgstr "%s hat ein Update veröffentlicht."
@@ -2668,7 +2721,7 @@ msgstr "Nachricht gelöscht."
msgid "Conversation removed."
msgstr "Unterhaltung gelöscht."
-#: ../../mod/message.php:137 ../../include/conversation.php:843
+#: ../../mod/message.php:137 ../../include/conversation.php:868
msgid "Please enter a link URL:"
msgstr "Bitte gib die URL des Links ein:"
@@ -2722,348 +2775,357 @@ msgstr "Freunde von %s"
msgid "No friends to display."
msgstr "Keine Freunde zum Anzeigen."
-#: ../../mod/admin.php:59 ../../mod/admin.php:295
+#: ../../mod/admin.php:71 ../../mod/admin.php:311
msgid "Site"
msgstr "Seite"
-#: ../../mod/admin.php:60 ../../mod/admin.php:460 ../../mod/admin.php:472
+#: ../../mod/admin.php:72 ../../mod/admin.php:476 ../../mod/admin.php:488
msgid "Users"
msgstr "Nutzer"
-#: ../../mod/admin.php:61 ../../mod/admin.php:549 ../../mod/admin.php:586
+#: ../../mod/admin.php:73 ../../mod/admin.php:565 ../../mod/admin.php:602
msgid "Plugins"
msgstr "Plugins"
-#: ../../mod/admin.php:76 ../../mod/admin.php:651
+#: ../../mod/admin.php:74 ../../mod/admin.php:736 ../../mod/admin.php:768
+msgid "Themes"
+msgstr "Themen"
+
+#: ../../mod/admin.php:89 ../../mod/admin.php:846
msgid "Logs"
msgstr "Protokolle"
-#: ../../mod/admin.php:81
+#: ../../mod/admin.php:94
msgid "User registrations waiting for confirmation"
msgstr "Nutzeranmeldungen die auf Bestätigung warten"
-#: ../../mod/admin.php:144 ../../mod/admin.php:294 ../../mod/admin.php:459
-#: ../../mod/admin.php:548 ../../mod/admin.php:585 ../../mod/admin.php:650
+#: ../../mod/admin.php:160 ../../mod/admin.php:310 ../../mod/admin.php:475
+#: ../../mod/admin.php:564 ../../mod/admin.php:601 ../../mod/admin.php:735
+#: ../../mod/admin.php:767 ../../mod/admin.php:845
msgid "Administration"
msgstr "Administration"
-#: ../../mod/admin.php:145
+#: ../../mod/admin.php:161
msgid "Summary"
msgstr "Zusammenfassung"
-#: ../../mod/admin.php:146
+#: ../../mod/admin.php:162
msgid "Registered users"
msgstr "Registrierte Nutzer"
-#: ../../mod/admin.php:148
+#: ../../mod/admin.php:164
msgid "Pending registrations"
msgstr "Anstehende Anmeldungen"
-#: ../../mod/admin.php:149
+#: ../../mod/admin.php:165
msgid "Version"
msgstr "Version"
-#: ../../mod/admin.php:151
+#: ../../mod/admin.php:167
msgid "Active plugins"
msgstr "Aktive Plugins"
-#: ../../mod/admin.php:243
+#: ../../mod/admin.php:259
msgid "Site settings updated."
msgstr "Seiteneinstellungen aktualisiert."
-#: ../../mod/admin.php:287
+#: ../../mod/admin.php:303
msgid "Closed"
msgstr "Geschlossen"
-#: ../../mod/admin.php:288
+#: ../../mod/admin.php:304
msgid "Requires approval"
msgstr "Bedarf Zustimmung"
-#: ../../mod/admin.php:289
+#: ../../mod/admin.php:305
msgid "Open"
msgstr "Offen"
-#: ../../mod/admin.php:298
+#: ../../mod/admin.php:314
msgid "File upload"
msgstr "Datei hochladen"
-#: ../../mod/admin.php:299
+#: ../../mod/admin.php:315
msgid "Policies"
msgstr "Regeln"
-#: ../../mod/admin.php:300
+#: ../../mod/admin.php:316
msgid "Advanced"
msgstr "Erweitert"
-#: ../../mod/admin.php:304 ../../addon/statusnet/statusnet.php:486
+#: ../../mod/admin.php:320 ../../addon/statusnet/statusnet.php:523
msgid "Site name"
msgstr "Seitenname"
-#: ../../mod/admin.php:305
+#: ../../mod/admin.php:321
msgid "Banner/Logo"
msgstr "Banner/Logo"
-#: ../../mod/admin.php:306
+#: ../../mod/admin.php:322
msgid "System language"
msgstr "Systemsprache"
-#: ../../mod/admin.php:307
+#: ../../mod/admin.php:323
msgid "System theme"
msgstr "Systemweites Thema"
-#: ../../mod/admin.php:309
+#: ../../mod/admin.php:325
msgid "Maximum image size"
msgstr "Maximale Größe von Bildern"
-#: ../../mod/admin.php:311
+#: ../../mod/admin.php:327
msgid "Register policy"
msgstr "Registrierungsmethode"
-#: ../../mod/admin.php:312
+#: ../../mod/admin.php:328
msgid "Register text"
msgstr "Registrierungstext"
-#: ../../mod/admin.php:313
+#: ../../mod/admin.php:329
msgid "Accounts abandoned after x days"
msgstr "Accounts gelten nach x Tagen als unbenutzt"
-#: ../../mod/admin.php:313
+#: ../../mod/admin.php:329
msgid ""
"Will not waste system resources polling external sites for abandonded "
"accounts. Enter 0 for no time limit."
msgstr "Verschwende keine System-Ressourcen fürs Pollen externer Seiten, wenn Accounts nicht mehr benutzt werden. 0 eingeben für kein Limit."
-#: ../../mod/admin.php:314
+#: ../../mod/admin.php:330
msgid "Allowed friend domains"
msgstr "Erlaubte Domains für Kontakte"
-#: ../../mod/admin.php:315
+#: ../../mod/admin.php:331
msgid "Allowed email domains"
msgstr "Erlaubte Domains für Emails"
-#: ../../mod/admin.php:316
+#: ../../mod/admin.php:332
msgid "Block public"
msgstr "Öffentlichen Zugriff blockieren"
-#: ../../mod/admin.php:317
+#: ../../mod/admin.php:333
msgid "Force publish"
msgstr "Erzwinge Veröffentlichung"
-#: ../../mod/admin.php:318
+#: ../../mod/admin.php:334
msgid "Global directory update URL"
msgstr "URL für Updates beim weltweiten Verzeichnis"
-#: ../../mod/admin.php:320
+#: ../../mod/admin.php:336
msgid "Block multiple registrations"
msgstr "Unterbinde Mehrfachregistrierung"
-#: ../../mod/admin.php:321
+#: ../../mod/admin.php:337
msgid "OpenID support"
msgstr "OpenID Unterstützung"
-#: ../../mod/admin.php:322
+#: ../../mod/admin.php:338
msgid "Gravatar support"
msgstr "Gravatar Unterstützung"
-#: ../../mod/admin.php:323
+#: ../../mod/admin.php:339
msgid "Fullname check"
msgstr "Name auf Vollständigkeit überprüfen"
-#: ../../mod/admin.php:324
+#: ../../mod/admin.php:340
msgid "UTF-8 Regular expressions"
msgstr "UTF-8 Reguläre Ausdrücke"
-#: ../../mod/admin.php:325
+#: ../../mod/admin.php:341
msgid "Show Community Page"
msgstr "Gemeinschaftsseite anzeigen"
-#: ../../mod/admin.php:326
+#: ../../mod/admin.php:342
msgid "Enable OStatus support"
msgstr "OStatus Unterstützung aktivieren"
-#: ../../mod/admin.php:327
+#: ../../mod/admin.php:343
msgid "Enable Diaspora support"
msgstr "Diaspora-Support aktivieren"
-#: ../../mod/admin.php:328
+#: ../../mod/admin.php:344
msgid "Only allow Friendica contacts"
msgstr "Nur Friendica-Kontakte erlauben"
-#: ../../mod/admin.php:329
+#: ../../mod/admin.php:345
msgid "Verify SSL"
msgstr "SSL Überprüfen"
-#: ../../mod/admin.php:330
+#: ../../mod/admin.php:346
msgid "Proxy user"
msgstr "Proxy Nutzer"
-#: ../../mod/admin.php:331
+#: ../../mod/admin.php:347
msgid "Proxy URL"
msgstr "Proxy URL"
-#: ../../mod/admin.php:332
+#: ../../mod/admin.php:348
msgid "Network timeout"
msgstr "Netzwerk Wartezeit"
-#: ../../mod/admin.php:353
+#: ../../mod/admin.php:369
#, php-format
msgid "%s user blocked"
msgid_plural "%s users blocked/unblocked"
msgstr[0] "%s Nutzer gesperrt"
msgstr[1] "%s Nutzer gesperrt/entsperrt"
-#: ../../mod/admin.php:360
+#: ../../mod/admin.php:376
#, php-format
msgid "%s user deleted"
msgid_plural "%s users deleted"
msgstr[0] "%s Nutzer gelöscht"
msgstr[1] "%s Nutzer gelöscht"
-#: ../../mod/admin.php:394
+#: ../../mod/admin.php:410
#, php-format
msgid "User '%s' deleted"
msgstr "Nutzer '%s' gelöscht"
-#: ../../mod/admin.php:401
+#: ../../mod/admin.php:417
#, php-format
msgid "User '%s' unblocked"
msgstr "Nutzer '%s' entsperrt"
-#: ../../mod/admin.php:401
+#: ../../mod/admin.php:417
#, php-format
msgid "User '%s' blocked"
msgstr "Nutzer '%s' gesperrt"
-#: ../../mod/admin.php:462
+#: ../../mod/admin.php:478
msgid "select all"
msgstr "Alle auswählen"
-#: ../../mod/admin.php:463
+#: ../../mod/admin.php:479
msgid "User registrations waiting for confirm"
msgstr "Neuanmeldungen, die auf deine Bestätigung warten"
-#: ../../mod/admin.php:464
+#: ../../mod/admin.php:480
msgid "Request date"
msgstr "Anfrage Datum"
-#: ../../mod/admin.php:464 ../../mod/admin.php:473
+#: ../../mod/admin.php:480 ../../mod/admin.php:489
#: ../../include/contact_selectors.php:79
msgid "Email"
msgstr "Email"
-#: ../../mod/admin.php:465
+#: ../../mod/admin.php:481
msgid "No registrations."
msgstr "Keine Neuanmeldungen."
-#: ../../mod/admin.php:467
+#: ../../mod/admin.php:483
msgid "Deny"
msgstr "Verwehren"
-#: ../../mod/admin.php:473
+#: ../../mod/admin.php:489
msgid "Register date"
msgstr "Anmeldedatum"
-#: ../../mod/admin.php:473
+#: ../../mod/admin.php:489
msgid "Last login"
msgstr "Letzte Anmeldung"
-#: ../../mod/admin.php:473
+#: ../../mod/admin.php:489
msgid "Last item"
msgstr "Letzter Beitrag"
-#: ../../mod/admin.php:473
+#: ../../mod/admin.php:489
msgid "Account"
msgstr "Nutzerkonto"
-#: ../../mod/admin.php:475
+#: ../../mod/admin.php:491
msgid ""
"Selected users will be deleted!\\n\\nEverything these users had posted on "
"this site will be permanently deleted!\\n\\nAre you sure?"
msgstr "Die markierten Nutzer werden gelöscht!\\n\\nAlle Beiträge, die diese Nutzer auf dieser Seite veröffentlicht haben, werden permanent gelöscht!\\n\\nBist du sicher?"
-#: ../../mod/admin.php:476
+#: ../../mod/admin.php:492
msgid ""
"The user {0} will be deleted!\\n\\nEverything this user has posted on this "
"site will be permanently deleted!\\n\\nAre you sure?"
msgstr "Der Nutzer {0} wird gelöscht!\\n\\nAlles was dieser Nutzer auf dieser Seite veröffentlicht hat, wird permanent gelöscht!\\n\\nBist du sicher?"
-#: ../../mod/admin.php:512
+#: ../../mod/admin.php:528
#, php-format
msgid "Plugin %s disabled."
msgstr "Plugin %s deaktiviert."
-#: ../../mod/admin.php:516
+#: ../../mod/admin.php:532
#, php-format
msgid "Plugin %s enabled."
msgstr "Plugin %s aktiviert."
-#: ../../mod/admin.php:526
+#: ../../mod/admin.php:542 ../../mod/admin.php:718
msgid "Disable"
msgstr "Ausschalten"
-#: ../../mod/admin.php:528
+#: ../../mod/admin.php:544 ../../mod/admin.php:720
msgid "Enable"
msgstr "Einschalten"
-#: ../../mod/admin.php:550
+#: ../../mod/admin.php:566 ../../mod/admin.php:737
msgid "Toggle"
msgstr "Umschalten"
-#: ../../mod/admin.php:551 ../../include/nav.php:129
+#: ../../mod/admin.php:567 ../../mod/admin.php:738 ../../include/nav.php:130
msgid "Settings"
msgstr "Einstellungen"
-#: ../../mod/admin.php:613
+#: ../../mod/admin.php:683
+msgid "No themes found."
+msgstr "Keine Themen gefunden."
+
+#: ../../mod/admin.php:795
msgid "Log settings updated."
msgstr "Protokolleinstellungen aktualisiert."
-#: ../../mod/admin.php:653
+#: ../../mod/admin.php:848
msgid "Clear"
msgstr "löschen"
-#: ../../mod/admin.php:659
+#: ../../mod/admin.php:854
msgid "Debugging"
msgstr "Protokoll führen"
-#: ../../mod/admin.php:660
+#: ../../mod/admin.php:855
msgid "Log file"
msgstr "Protokolldatei"
-#: ../../mod/admin.php:660
+#: ../../mod/admin.php:855
msgid ""
"Must be writable by web server. Relative to your Friendica top-level "
"directory."
msgstr "Webserver muss Schreibrechte besitzen. Relativ zum Friendica-Installationsverzeichnis."
-#: ../../mod/admin.php:661
+#: ../../mod/admin.php:856
msgid "Log level"
msgstr "Protokollevel"
-#: ../../mod/admin.php:702
+#: ../../mod/admin.php:897
msgid "Close"
msgstr "Schließen"
-#: ../../mod/admin.php:708
+#: ../../mod/admin.php:903
msgid "FTP Host"
msgstr "FTP Host"
-#: ../../mod/admin.php:709
+#: ../../mod/admin.php:904
msgid "FTP Path"
msgstr "FTP Pfad"
-#: ../../mod/admin.php:710
+#: ../../mod/admin.php:905
msgid "FTP User"
msgstr "FTP Nutzername"
-#: ../../mod/admin.php:711
+#: ../../mod/admin.php:906
msgid "FTP Password"
msgstr "FTP Passwort"
-#: ../../mod/profile.php:15 ../../boot.php:841
+#: ../../mod/profile.php:15 ../../boot.php:845
msgid "Requested profile is not available."
msgstr "Profil nicht vorhanden."
-#: ../../mod/profile.php:111 ../../mod/display.php:66
+#: ../../mod/profile.php:111 ../../mod/display.php:67
msgid "Access to this profile has been restricted."
msgstr "Der Zugriff zu diesem Profil wurde eingeschränkt."
@@ -3071,48 +3133,48 @@ msgstr "Der Zugriff zu diesem Profil wurde eingeschränkt."
msgid "Tips for New Members"
msgstr "Tipps für neue Nutzer"
-#: ../../mod/ping.php:148
+#: ../../mod/ping.php:146
msgid "{0} wants to be your friend"
msgstr "{0} möchte mit dir in Kontakt treten"
-#: ../../mod/ping.php:153
+#: ../../mod/ping.php:151
msgid "{0} sent you a message"
msgstr "{0} hat dir eine Nachricht geschickt"
-#: ../../mod/ping.php:158
+#: ../../mod/ping.php:156
msgid "{0} requested registration"
msgstr "{0} möchte sich registrieren"
-#: ../../mod/ping.php:164
+#: ../../mod/ping.php:162
#, php-format
msgid "{0} commented %s's post"
msgstr "{0} kommentierte einen Beitrag von %s"
-#: ../../mod/ping.php:169
+#: ../../mod/ping.php:167
#, php-format
msgid "{0} liked %s's post"
msgstr "{0} mag %ss Beitrag"
-#: ../../mod/ping.php:174
+#: ../../mod/ping.php:172
#, php-format
msgid "{0} disliked %s's post"
msgstr "{0} mag %ss Beitrag nicht"
-#: ../../mod/ping.php:179
+#: ../../mod/ping.php:177
#, php-format
msgid "{0} is now friends with %s"
msgstr "{0} ist jetzt mit %s befreundet"
-#: ../../mod/ping.php:184
+#: ../../mod/ping.php:182
msgid "{0} posted"
msgstr "{0} hat etwas veröffentlicht"
-#: ../../mod/ping.php:189
+#: ../../mod/ping.php:187
#, php-format
msgid "{0} tagged %s's post with #%s"
msgstr "{0} hat %ss Beitrag mit dem Schlagwort #%s versehen"
-#: ../../mod/ping.php:195
+#: ../../mod/ping.php:193
msgid "{0} mentioned you in a post"
msgstr "{0} hat dich in einem Beitrag erwähnt"
@@ -3130,39 +3192,39 @@ msgid ""
"This site is not configured to allow communications with other networks."
msgstr "Diese Seite ist so konfiguriert, dass keine Kommunikation mit anderen Netzwerken erfolgen kann."
-#: ../../mod/follow.php:48 ../../mod/follow.php:58
+#: ../../mod/follow.php:48 ../../mod/follow.php:63
msgid "No compatible communication protocols or feeds were discovered."
msgstr "Es wurden keine kompatiblen Kommunikationsprotokolle oder Feeds gefunden."
-#: ../../mod/follow.php:56
+#: ../../mod/follow.php:61
msgid "The profile address specified does not provide adequate information."
msgstr "Die angegebene Profiladresse liefert unzureichende Informationen."
-#: ../../mod/follow.php:60
+#: ../../mod/follow.php:65
msgid "An author or name was not found."
msgstr "Es wurde kein Autor oder Name gefunden."
-#: ../../mod/follow.php:62
+#: ../../mod/follow.php:67
msgid "No browser URL could be matched to this address."
msgstr "Zu dieser Adresse konnte keine passende Browser URL gefunden werden."
-#: ../../mod/follow.php:69
+#: ../../mod/follow.php:74
msgid ""
"The profile address specified belongs to a network which has been disabled "
"on this site."
msgstr "Die Adresse dieses Profils gehört zu einem Netzwerk mit dem die Kommunikation auf dieser Seite ausgeschaltet wurde."
-#: ../../mod/follow.php:74
+#: ../../mod/follow.php:79
msgid ""
"Limited profile. This person will be unable to receive direct/personal "
"notifications from you."
msgstr "Eingeschränktes Profil. Diese Person wird keine direkten/privaten Nachrichten von dir erhalten können."
-#: ../../mod/follow.php:144
+#: ../../mod/follow.php:149
msgid "Unable to retrieve contact information."
msgstr "Konnte die Kontaktinformationen nicht empfangen."
-#: ../../mod/follow.php:190
+#: ../../mod/follow.php:195
msgid "following"
msgstr "folgen"
@@ -3174,7 +3236,7 @@ msgstr "Gemeinsame Freunde"
msgid "No friends in common."
msgstr "Keine gemeinsamen Freunde."
-#: ../../mod/display.php:109
+#: ../../mod/display.php:127
msgid "Item has been removed."
msgstr "Eintrag wurde entfernt."
@@ -3378,7 +3440,7 @@ msgid ""
"be visible to anybody using the internet."
msgstr "Dies ist dein <strong>öffentliches</strong> Profil.<br />Es <strong>könnte</strong> für jeden Nutzer des Internets sichtbar sein."
-#: ../../mod/profiles.php:426 ../../mod/directory.php:122
+#: ../../mod/profiles.php:426 ../../mod/directory.php:124
msgid "Age: "
msgstr "Alter: "
@@ -3386,27 +3448,27 @@ msgstr "Alter: "
msgid "Edit/Manage Profiles"
msgstr "Verwalte/Editiere Profile"
-#: ../../mod/profiles.php:462 ../../boot.php:942
+#: ../../mod/profiles.php:462 ../../boot.php:946
msgid "Change profile photo"
msgstr "Profilbild ändern"
-#: ../../mod/profiles.php:463 ../../boot.php:943
+#: ../../mod/profiles.php:463 ../../boot.php:947
msgid "Create New Profile"
msgstr "Neues Profil anlegen"
-#: ../../mod/profiles.php:473 ../../boot.php:953
+#: ../../mod/profiles.php:473 ../../boot.php:957
msgid "Profile Image"
msgstr "Profilbild"
-#: ../../mod/profiles.php:475 ../../boot.php:956
+#: ../../mod/profiles.php:475 ../../boot.php:960
msgid "visible to everybody"
msgstr "sichtbar für jeden"
-#: ../../mod/profiles.php:476 ../../boot.php:957
+#: ../../mod/profiles.php:476 ../../boot.php:961
msgid "Edit visibility"
msgstr "Sichtbarkeit bearbeiten"
-#: ../../mod/tagger.php:103 ../../include/conversation.php:116
+#: ../../mod/tagger.php:103 ../../include/conversation.php:138
#, php-format
msgid "%1$s tagged %2$s's %3$s with %4$s"
msgstr "%1$s hat %2$ss %3$s mit %4$s getaggt"
@@ -3460,31 +3522,31 @@ msgstr "Keine Vorschläge. Falls der Server frisch aufgesetzt wurde, versuche es
msgid "Ignore/Hide"
msgstr "Ignorieren/Verbergen"
-#: ../../mod/directory.php:49
+#: ../../mod/directory.php:51
msgid "Global Directory"
msgstr "Weltweites Verzeichnis"
-#: ../../mod/directory.php:55
+#: ../../mod/directory.php:57
msgid "Normal site view"
msgstr "Normale Seitenansicht"
-#: ../../mod/directory.php:57
+#: ../../mod/directory.php:59
msgid "Admin - View all site entries"
msgstr "Admin: Alle Einträge dieses Servers anzeigen"
-#: ../../mod/directory.php:63
+#: ../../mod/directory.php:65
msgid "Find on this site"
msgstr "Auf diesem Server suchen"
-#: ../../mod/directory.php:66
+#: ../../mod/directory.php:68
msgid "Site Directory"
msgstr "Verzeichnis"
-#: ../../mod/directory.php:125
+#: ../../mod/directory.php:127
msgid "Gender: "
msgstr "Geschlecht:"
-#: ../../mod/directory.php:151
+#: ../../mod/directory.php:153
msgid "No entries (some entries may be hidden)."
msgstr "Keine Einträge (einige Einträge könnten versteckt sein)."
@@ -3570,7 +3632,7 @@ msgid "Unable to set contact photo."
msgstr "Konnte das Bild des Kontakts nicht speichern."
#: ../../mod/dfrn_confirm.php:473 ../../include/diaspora.php:495
-#: ../../include/conversation.php:79
+#: ../../include/conversation.php:101
#, php-format
msgid "%1$s is now friends with %2$s"
msgstr "%1$s ist nun mit %2$s befreundet"
@@ -3616,71 +3678,71 @@ msgstr "Die Updates für dein Profil konnten nicht gespeichert werden"
msgid "Connection accepted at %s"
msgstr "Auf %s wurde die Verbindung akzeptiert"
-#: ../../addon/facebook/facebook.php:337
+#: ../../addon/facebook/facebook.php:338
msgid "Facebook disabled"
msgstr "Facebook deaktiviert"
-#: ../../addon/facebook/facebook.php:342
+#: ../../addon/facebook/facebook.php:343
msgid "Updating contacts"
msgstr "Aktualisiere Kontakte"
-#: ../../addon/facebook/facebook.php:351
+#: ../../addon/facebook/facebook.php:352
msgid "Facebook API key is missing."
msgstr "Facebook-API-Schlüssel nicht gefunden"
-#: ../../addon/facebook/facebook.php:358
+#: ../../addon/facebook/facebook.php:359
msgid "Facebook Connect"
msgstr "Mit Facebook verbinden"
-#: ../../addon/facebook/facebook.php:364
+#: ../../addon/facebook/facebook.php:365
msgid "Install Facebook connector for this account."
msgstr "Facebook-Connector für diesen Account installieren."
-#: ../../addon/facebook/facebook.php:371
+#: ../../addon/facebook/facebook.php:372
msgid "Remove Facebook connector"
msgstr "Facebook-Connector entfernen"
-#: ../../addon/facebook/facebook.php:376
+#: ../../addon/facebook/facebook.php:377
msgid ""
"Re-authenticate [This is necessary whenever your Facebook password is "
"changed.]"
msgstr "Neu authentifizieren [Das ist immer dann nötig, wenn Du Dein Facebook-Passwort geändert hast.]"
-#: ../../addon/facebook/facebook.php:383
+#: ../../addon/facebook/facebook.php:384
msgid "Post to Facebook by default"
msgstr "Veröffentliche standardmäßig bei Facebook"
-#: ../../addon/facebook/facebook.php:387
+#: ../../addon/facebook/facebook.php:388
msgid "Link all your Facebook friends and conversations on this website"
msgstr "All meine Facebook-Kontakte und -Konversationen hier auf diese Website importieren"
-#: ../../addon/facebook/facebook.php:389
+#: ../../addon/facebook/facebook.php:390
msgid ""
"Facebook conversations consist of your <em>profile wall</em> and your friend"
" <em>stream</em>."
msgstr "Facebook-Konversationen sind alles, was auf deiner <em>Pinnwand</em> erscheint, und die Beiträge deiner Freunde <em>(Stream).</em>"
-#: ../../addon/facebook/facebook.php:390
+#: ../../addon/facebook/facebook.php:391
msgid "On this website, your Facebook friend stream is only visible to you."
msgstr "Hier auf dieser Webseite kannst nur du die Beiträge Deiner Facebook-Freunde (Stream) sehen."
-#: ../../addon/facebook/facebook.php:391
+#: ../../addon/facebook/facebook.php:392
msgid ""
"The following settings determine the privacy of your Facebook profile wall "
"on this website."
msgstr "Mit den folgenden Einstellungen kannst Du die Privatsphäre der Kopie Deiner Facebook-Pinnwand hier auf dieser Seite einstellen."
-#: ../../addon/facebook/facebook.php:395
+#: ../../addon/facebook/facebook.php:396
msgid ""
"On this website your Facebook profile wall conversations will only be "
"visible to you"
msgstr "Meine Facebook-Pinnwand hier auf dieser Webseite nur für mich sichtbar machen"
-#: ../../addon/facebook/facebook.php:400
+#: ../../addon/facebook/facebook.php:401
msgid "Do not import your Facebook profile wall conversations"
msgstr "Facebook-Pinnwand nicht importieren"
-#: ../../addon/facebook/facebook.php:402
+#: ../../addon/facebook/facebook.php:403
msgid ""
"If you choose to link conversations and leave both of these boxes unchecked,"
" your Facebook profile wall will be merged with your profile wall on this "
@@ -3688,43 +3750,43 @@ msgid ""
"who may see the conversations."
msgstr "Wenn Du Facebook-Konversationen importierst und diese beiden Häkchen nicht setzt, wird Deine Facebook-Pinnwand mit der Pinnwand hier auf dieser Webseite vereinigt. Die Privatsphäre-Einstellungen für Deine Pinnwand auf dieser Webseite geben dann an, wer die Konversationen sehen kann."
-#: ../../addon/facebook/facebook.php:407
+#: ../../addon/facebook/facebook.php:408
msgid "Comma separated applications to ignore"
msgstr "Komma separierte Liste von Anwendungen die ignoriert werden sollen"
-#: ../../addon/facebook/facebook.php:475
+#: ../../addon/facebook/facebook.php:476
#: ../../include/contact_selectors.php:81
msgid "Facebook"
msgstr "Facebook"
-#: ../../addon/facebook/facebook.php:476
+#: ../../addon/facebook/facebook.php:477
msgid "Facebook Connector Settings"
msgstr "Facebook-Verbindungseinstellungen"
-#: ../../addon/facebook/facebook.php:490
+#: ../../addon/facebook/facebook.php:491
msgid "Post to Facebook"
msgstr "Bei Facebook veröffentlichen"
-#: ../../addon/facebook/facebook.php:581
+#: ../../addon/facebook/facebook.php:582
msgid ""
"Post to Facebook cancelled because of multi-network access permission "
"conflict."
msgstr "Beitrag wurde nicht bei Facebook veröffentlicht, da Konflikte bei den Multi-Netzwerk-Zugriffsrechten vorliegen."
-#: ../../addon/facebook/facebook.php:650
+#: ../../addon/facebook/facebook.php:651
msgid "Image: "
msgstr "Bild: "
-#: ../../addon/facebook/facebook.php:727
+#: ../../addon/facebook/facebook.php:728
msgid "View on Friendica"
msgstr "In Friendica betrachten"
-#: ../../addon/facebook/facebook.php:751
+#: ../../addon/facebook/facebook.php:752
msgid "Facebook post failed. Queued for retry."
msgstr "Veröffentlichung bei Facebook gescheitert. Wir versuchen es später erneut."
-#: ../../addon/facebook/facebook.php:876 ../../addon/facebook/facebook.php:885
-#: ../../include/bb2diaspora.php:113
+#: ../../addon/facebook/facebook.php:877 ../../addon/facebook/facebook.php:886
+#: ../../include/bb2diaspora.php:132
msgid "link"
msgstr "Verweis"
@@ -3809,7 +3871,7 @@ msgstr "%s – Zum Öffnen/Schließen klicken"
#: ../../addon/communityhome/communityhome.php:28
#: ../../addon/communityhome/communityhome.php:34 ../../include/nav.php:62
-#: ../../boot.php:706
+#: ../../boot.php:710
msgid "Login"
msgstr "Anmeldung"
@@ -3834,7 +3896,7 @@ msgid "Last likes"
msgstr "Zuletzt gemocht"
#: ../../addon/communityhome/communityhome.php:155
-#: ../../include/conversation.php:23 ../../include/conversation.php:96
+#: ../../include/conversation.php:45 ../../include/conversation.php:118
msgid "event"
msgstr "Veranstaltung"
@@ -3990,19 +4052,19 @@ msgstr "Ziehe die Dateien hierher die du hochladen willst"
msgid "Failed"
msgstr "Fehlgeschlagen"
-#: ../../addon/js_upload/js_upload.php:294
+#: ../../addon/js_upload/js_upload.php:297
msgid "No files were uploaded."
msgstr "Keine Dateien hochgeladen."
-#: ../../addon/js_upload/js_upload.php:300
+#: ../../addon/js_upload/js_upload.php:303
msgid "Uploaded file is empty"
msgstr "Hochgeladene Datei ist leer"
-#: ../../addon/js_upload/js_upload.php:323
+#: ../../addon/js_upload/js_upload.php:326
msgid "File has an invalid extension, it should be one of "
msgstr "Die Dateierweiterung ist nicht erlaubt, sie muss eine der folgenden sein "
-#: ../../addon/js_upload/js_upload.php:334
+#: ../../addon/js_upload/js_upload.php:337
msgid "Upload was cancelled, or server error encountered"
msgstr "Upload abgebrochen oder Serverfehler aufgetreten"
@@ -4086,6 +4148,48 @@ msgstr "Autor blockieren"
msgid "blockem settings updated"
msgstr "blockem Einstellungen aktualisiert"
+#: ../../addon/qcomment/qcomment.php:51
+msgid ":-)"
+msgstr ":-)"
+
+#: ../../addon/qcomment/qcomment.php:51
+msgid ":-("
+msgstr ":-("
+
+#: ../../addon/qcomment/qcomment.php:51
+msgid "lol"
+msgstr "lol"
+
+#: ../../addon/qcomment/qcomment.php:54
+msgid "Quick Comment Settings"
+msgstr "Schnell-Kommentar Einstellungen"
+
+#: ../../addon/qcomment/qcomment.php:56
+msgid "Enter quick comments, one per line"
+msgstr "Gibt ein Schnell-Kommentar pro Zeile ein"
+
+#: ../../addon/qcomment/qcomment.php:74
+msgid "Quick Comment settings saved."
+msgstr "Schnell-Kommentare Einstellungen gespeichert"
+
+#: ../../addon/openstreetmap/openstreetmap.php:71
+msgid "Tile Server URL"
+msgstr "Tile Server URL"
+
+#: ../../addon/openstreetmap/openstreetmap.php:71
+msgid ""
+"A list of <a href=\"http://wiki.openstreetmap.org/wiki/TMS\" "
+"target=\"_blank\">public tile servers</a>"
+msgstr "Eine Liste <a href=\"http://wiki.openstreetmap.org/wiki/TMS\" target=\"_blank\">öffentlicher Tile Server</a>"
+
+#: ../../addon/openstreetmap/openstreetmap.php:72
+msgid "Default zoom"
+msgstr "Standard Zoom"
+
+#: ../../addon/openstreetmap/openstreetmap.php:72
+msgid "The default zoom level. (1:world, 18:highest)"
+msgstr "Standard Zoo,level (1: Welt; 18: höchstes)"
+
#: ../../addon/editplain/editplain.php:46
msgid "Editplain settings updated."
msgstr "Editplain Einstellungen aktualisiert"
@@ -4110,44 +4214,44 @@ msgstr "pageheader-Einstellungen gespeichert."
msgid "View Source"
msgstr "Quelle ansehen"
-#: ../../addon/statusnet/statusnet.php:140
+#: ../../addon/statusnet/statusnet.php:134
msgid "Post to StatusNet"
msgstr "Bei StatusNet veröffentlichen"
-#: ../../addon/statusnet/statusnet.php:182
+#: ../../addon/statusnet/statusnet.php:175
msgid ""
"Please contact your site administrator.<br />The provided API URL is not "
"valid."
msgstr "Bitte kontaktiere den Administrator des Servers.<br />Die angegebene API-URL ist nicht gültig."
-#: ../../addon/statusnet/statusnet.php:210
+#: ../../addon/statusnet/statusnet.php:203
msgid "We could not contact the StatusNet API with the Path you entered."
msgstr "Die StatusNet-API konnte mit dem angegebenen Pfad nicht erreicht werden."
-#: ../../addon/statusnet/statusnet.php:236
+#: ../../addon/statusnet/statusnet.php:229
msgid "StatusNet settings updated."
msgstr "StatusNet Einstellungen aktualisiert."
-#: ../../addon/statusnet/statusnet.php:259
+#: ../../addon/statusnet/statusnet.php:252
msgid "StatusNet Posting Settings"
msgstr "StatusNet-Beitragseinstellungen"
-#: ../../addon/statusnet/statusnet.php:273
+#: ../../addon/statusnet/statusnet.php:266
msgid "Globally Available StatusNet OAuthKeys"
msgstr "Verfügbare OAuth Schlüssel für StatusNet"
-#: ../../addon/statusnet/statusnet.php:274
+#: ../../addon/statusnet/statusnet.php:267
msgid ""
"There are preconfigured OAuth key pairs for some StatusNet servers "
"available. If you are useing one of them, please use these credentials. If "
"not feel free to connect to any other StatusNet instance (see below)."
msgstr "Für einige StatusNet Server sind OAuth Schlüsselpaare verfügbar. Solltest du einen dieser Server benutzen, dann verwende doch bitte diese Schlüssel. Falls nicht kannst du weiter unten deine eigenen OAuth Schlüssel eintragen."
-#: ../../addon/statusnet/statusnet.php:282
+#: ../../addon/statusnet/statusnet.php:275
msgid "Provide your own OAuth Credentials"
msgstr "Eigene OAuth Schlüssel eintragen"
-#: ../../addon/statusnet/statusnet.php:283
+#: ../../addon/statusnet/statusnet.php:276
msgid ""
"No consumer key pair for StatusNet found. Register your Friendica Account as"
" an desktop client on your StatusNet account, copy the consumer key pair "
@@ -4156,19 +4260,19 @@ msgid ""
"Friendica installation at your favorited StatusNet installation."
msgstr "Kein Consumer-Schlüsselpaar für StatusNet gefunden. Registriere deinen Friendica-Account als Desktop-Client, kopiere das Consumer-Schlüsselpaar hierher und gib die API-URL ein.<br />Bevor du dein eigenes Consumer-Schlüsselpaar registrierst, frage den Administrator dieses Friendica-Servers, ob schon ein Schlüsselpaar für diesen Friendica-Server auf diesem StatusNet-Server existiert."
-#: ../../addon/statusnet/statusnet.php:285
+#: ../../addon/statusnet/statusnet.php:278
msgid "OAuth Consumer Key"
msgstr "OAuth Consumer Key"
-#: ../../addon/statusnet/statusnet.php:288
+#: ../../addon/statusnet/statusnet.php:281
msgid "OAuth Consumer Secret"
msgstr "OAuth Consumer Secret"
-#: ../../addon/statusnet/statusnet.php:291
+#: ../../addon/statusnet/statusnet.php:284
msgid "Base API Path (remember the trailing /)"
msgstr "Basis-URL der StatusNet-API (vergiss den abschließenden / nicht)"
-#: ../../addon/statusnet/statusnet.php:312
+#: ../../addon/statusnet/statusnet.php:305
msgid ""
"To connect to your StatusNet account click the button below to get a "
"security code from StatusNet which you have to copy into the input box below"
@@ -4176,50 +4280,58 @@ msgid ""
" to StatusNet."
msgstr "Um deinen Account mit einem StatusNet-Account zu verknüpfen, klicke den Button an, um einen Sicherheitscode von StatusNet zu erhalten, und kopiere diesen in das Eingabefeld weiter unten. Es werden ausschließlich deine <strong>öffentlichen</strong> Nachrichten an StatusNet gesendet."
-#: ../../addon/statusnet/statusnet.php:313
+#: ../../addon/statusnet/statusnet.php:306
msgid "Log in with StatusNet"
msgstr "Bei StatusNet anmelden"
-#: ../../addon/statusnet/statusnet.php:315
+#: ../../addon/statusnet/statusnet.php:308
msgid "Copy the security code from StatusNet here"
msgstr "Kopiere den Sicherheitscode von StatusNet hier hin"
-#: ../../addon/statusnet/statusnet.php:321
+#: ../../addon/statusnet/statusnet.php:314
msgid "Cancel Connection Process"
msgstr "Verbindungsprozess abbrechen"
-#: ../../addon/statusnet/statusnet.php:323
+#: ../../addon/statusnet/statusnet.php:316
msgid "Current StatusNet API is"
msgstr "Derzeitige StatusNet-API-URL lautet"
-#: ../../addon/statusnet/statusnet.php:324
+#: ../../addon/statusnet/statusnet.php:317
msgid "Cancel StatusNet Connection"
msgstr "Verbindung zum StatusNet Server abbrechen"
-#: ../../addon/statusnet/statusnet.php:335 ../../addon/twitter/twitter.php:189
+#: ../../addon/statusnet/statusnet.php:328 ../../addon/twitter/twitter.php:184
msgid "Currently connected to: "
msgstr "Momentan verbunden mit: "
-#: ../../addon/statusnet/statusnet.php:336
+#: ../../addon/statusnet/statusnet.php:329
msgid ""
"If enabled all your <strong>public</strong> postings can be posted to the "
"associated StatusNet account. You can choose to do so by default (here) or "
"for every posting separately in the posting options when writing the entry."
msgstr "Wenn aktiviert können all deine <strong>öffentlichen</strong> Einträge auf dem verbundenen StatusNet Konto veröffentlicht werden. Du kannst das (hier) als Standardverhalten einstellen oder beim Schreiben eines Beitrags in den Beitragsoptionen festlegen."
-#: ../../addon/statusnet/statusnet.php:338
+#: ../../addon/statusnet/statusnet.php:331
+msgid ""
+"<strong>Note</strong>: Due your privacy settings (<em>Hide your profile "
+"details from unknown viewers?</em>) the link potentially included in public "
+"postings relayed to StatusNet will lead the visitor to a blank page "
+"informing the visitor that the access to your profile has been restricted."
+msgstr "<strong>Hinweis</strong>: Aufgrund deiner Privatsphären Einstellungen (<em>Profil-Details vor unbekannten Betrachtern verbergen?</em>) wird der Link der eventuell an an deinen StatusNet Account weitergeleitete angehangen wird um auf den original Artikel zu verweisen den Betrachter auf eine leere Seite führen, auf der er darüber informiert wird, dass der Zugriff eingeschränkt wurde."
+
+#: ../../addon/statusnet/statusnet.php:334
msgid "Allow posting to StatusNet"
msgstr "Veröffentlichung bei StatusNet erlauben"
-#: ../../addon/statusnet/statusnet.php:341
+#: ../../addon/statusnet/statusnet.php:337
msgid "Send public postings to StatusNet by default"
msgstr "Veröffentliche öffentliche Beiträge standardmäßig bei StatusNet"
-#: ../../addon/statusnet/statusnet.php:346 ../../addon/twitter/twitter.php:200
+#: ../../addon/statusnet/statusnet.php:342 ../../addon/twitter/twitter.php:198
msgid "Clear OAuth configuration"
msgstr "OAuth-Konfiguration löschen"
-#: ../../addon/statusnet/statusnet.php:487
+#: ../../addon/statusnet/statusnet.php:524
msgid "API URL"
msgstr "API-URL"
@@ -4287,13 +4399,33 @@ msgstr "WordPress-API-URL"
msgid "Post to WordPress by default"
msgstr "Standardmäßig auf WordPress veröffentlichen"
-#: ../../addon/piwik/piwik.php:70
+#: ../../addon/showmore/showmore.php:38
+msgid "\"Show more\" Settings"
+msgstr "\"Mehr zeigen\" Einstellungen"
+
+#: ../../addon/showmore/showmore.php:41
+msgid "Enable Show More"
+msgstr "Aktiviere \"Mehr zeigen\""
+
+#: ../../addon/showmore/showmore.php:44
+msgid "Cutting posts after how much characters"
+msgstr "Begrenze Beiträge nach der Anzahl der Buchstaben"
+
+#: ../../addon/showmore/showmore.php:64
+msgid "Show More Settings saved."
+msgstr "\"Mehr zeigen\" Einstellungen gesichert."
+
+#: ../../addon/showmore/showmore.php:86
+msgid "Show More"
+msgstr "\"Mehr zeigen\""
+
+#: ../../addon/piwik/piwik.php:79
msgid ""
"This website is tracked using the <a href='http://www.piwik.org'>Piwik</a> "
"analytics tool."
msgstr "Diese Website benutzt <a href='http://www.piwik.org'>Piwik</a>, eine Open Source-Software zur statistischen Auswertung der Besucherzugriffe."
-#: ../../addon/piwik/piwik.php:73
+#: ../../addon/piwik/piwik.php:82
#, php-format
msgid ""
"If you do not want that your visits are logged this way you <a href='%s'>can"
@@ -4301,37 +4433,47 @@ msgid ""
"(opt-out)."
msgstr "Wenn Du nicht willst, dass Deine Besuche auf diese Weise gespeichert werden, kannst Du <a href='%s'>ein Cookie setzen</a>. Dann wird Piwik Dich auf dieser Website nicht mehr verfolgen (opt-out)."
-#: ../../addon/piwik/piwik.php:82
+#: ../../addon/piwik/piwik.php:90
msgid "Piwik Base URL"
msgstr "Piwik Basis URL"
-#: ../../addon/piwik/piwik.php:83
+#: ../../addon/piwik/piwik.php:90
+msgid ""
+"Absolute path to your Piwik installation. (without protocol (http/s), with "
+"trailing slash)"
+msgstr "Absoluter Pfad zu deiner Piwik Installation (ohen Protokoll (http/s) und mit abschließendem Schrägstrich)"
+
+#: ../../addon/piwik/piwik.php:91
msgid "Site ID"
msgstr "Seiten ID"
-#: ../../addon/piwik/piwik.php:84
+#: ../../addon/piwik/piwik.php:92
msgid "Show opt-out cookie link?"
msgstr "Link zum Setzen des Opt-Out Cookies anzeigen?"
-#: ../../addon/twitter/twitter.php:78
+#: ../../addon/piwik/piwik.php:93
+msgid "Asynchronous tracking"
+msgstr "Asynchroned Tracken"
+
+#: ../../addon/twitter/twitter.php:73
msgid "Post to Twitter"
msgstr "Bei Twitter veröffentlichen"
-#: ../../addon/twitter/twitter.php:124
+#: ../../addon/twitter/twitter.php:119
msgid "Twitter settings updated."
msgstr "Twitter Einstellungen aktualisiert."
-#: ../../addon/twitter/twitter.php:146
+#: ../../addon/twitter/twitter.php:141
msgid "Twitter Posting Settings"
msgstr "Twitter-Beitragseinstellungen"
-#: ../../addon/twitter/twitter.php:153
+#: ../../addon/twitter/twitter.php:148
msgid ""
"No consumer key pair for Twitter found. Please contact your site "
"administrator."
msgstr "Kein Consumer-Schlüsselpaar für Twitter gefunden. Bitte wende dich an den Administrator der Seite."
-#: ../../addon/twitter/twitter.php:172
+#: ../../addon/twitter/twitter.php:167
msgid ""
"At this Friendica instance the Twitter plugin was enabled but you have not "
"yet connected your account to your Twitter account. To do so click the "
@@ -4340,34 +4482,42 @@ msgid ""
" be posted to Twitter."
msgstr "Auf diesem Friendica-Server wurde das Twitter-Plugin aktiviert, aber du hast deinen Account noch nicht mit deinem Twitter-Account verbunden. Klicke dazu die Schaltfläche unten. Du erhältst dann eine PIN von Twitter, die du in das Eingabefeld unten kopieren musst. Nicht vergessen, den Senden-Knopf zu drücken! Nur <strong>öffentliche</strong> Beiträge werden bei Twitter veröffentlicht."
-#: ../../addon/twitter/twitter.php:173
+#: ../../addon/twitter/twitter.php:168
msgid "Log in with Twitter"
msgstr "bei Twitter anmelden"
-#: ../../addon/twitter/twitter.php:175
+#: ../../addon/twitter/twitter.php:170
msgid "Copy the PIN from Twitter here"
msgstr "Kopiere die Twitter-PIN hier her"
-#: ../../addon/twitter/twitter.php:190
+#: ../../addon/twitter/twitter.php:185
msgid ""
"If enabled all your <strong>public</strong> postings can be posted to the "
"associated Twitter account. You can choose to do so by default (here) or for"
" every posting separately in the posting options when writing the entry."
msgstr "Wenn aktiviert können all deine <strong>öffentlichen</strong> Einträge auf dem verbundenen Twitter Konto veröffentlicht werden. Du kannst dies (hier) als Standardverhalten einstellen oder beim Schreiben eines Beitrags in den Beitragsoptionen festlegen."
-#: ../../addon/twitter/twitter.php:192
+#: ../../addon/twitter/twitter.php:187
+msgid ""
+"<strong>Note</strong>: Due your privacy settings (<em>Hide your profile "
+"details from unknown viewers?</em>) the link potentially included in public "
+"postings relayed to Twitter will lead the visitor to a blank page informing "
+"the visitor that the access to your profile has been restricted."
+msgstr "<strong>Hinweis</strong>: Aufgrund deiner Privatsphären Einstellungen (<em>Profil-Details vor unbekannten Betrachtern verbergen?</em>) wird der Link der eventuell an an deinen Twitter Account weitergeleitete angehangen wird um auf den original Artikel zu verweisen den Betrachter auf eine leere Seite führen, auf der er darüber informiert wird, dass der Zugriff eingeschränkt wurde."
+
+#: ../../addon/twitter/twitter.php:190
msgid "Allow posting to Twitter"
msgstr "Veröffentlichung bei Twitter erlauben"
-#: ../../addon/twitter/twitter.php:195
+#: ../../addon/twitter/twitter.php:193
msgid "Send public postings to Twitter by default"
msgstr "Veröffentliche öffentliche Beiträge standardmäßig bei Twitter"
-#: ../../addon/twitter/twitter.php:317
+#: ../../addon/twitter/twitter.php:357
msgid "Consumer key"
msgstr "Consumer Key"
-#: ../../addon/twitter/twitter.php:318
+#: ../../addon/twitter/twitter.php:358
msgid "Consumer secret"
msgstr "Consumer Secret"
@@ -4395,7 +4545,7 @@ msgstr "Posterous-Passwort"
msgid "Post to Posterous by default"
msgstr "Veröffentliche öffentliche Beiträge standardmäßig bei Posterous"
-#: ../../include/profile_advanced.php:17 ../../boot.php:978
+#: ../../include/profile_advanced.php:17 ../../boot.php:982
msgid "Gender:"
msgstr "Geschlecht:"
@@ -4408,7 +4558,7 @@ msgid "j F"
msgstr "j F"
#: ../../include/profile_advanced.php:30 ../../include/datetime.php:438
-#: ../../include/items.php:1318
+#: ../../include/items.php:1349
msgid "Birthday:"
msgstr "Geburtstag:"
@@ -4416,11 +4566,11 @@ msgstr "Geburtstag:"
msgid "Age:"
msgstr "Alter:"
-#: ../../include/profile_advanced.php:37 ../../boot.php:981
+#: ../../include/profile_advanced.php:37 ../../boot.php:985
msgid "Status:"
msgstr "Status:"
-#: ../../include/profile_advanced.php:45 ../../boot.php:983
+#: ../../include/profile_advanced.php:45 ../../boot.php:987
msgid "Homepage:"
msgstr "Homepage:"
@@ -4756,20 +4906,20 @@ msgstr "Ist mir nicht wichtig"
msgid "Ask me"
msgstr "Frag mich"
-#: ../../include/event.php:17 ../../include/bb2diaspora.php:255
+#: ../../include/event.php:17 ../../include/bb2diaspora.php:274
msgid "Starts:"
msgstr "Beginnt:"
-#: ../../include/event.php:27 ../../include/bb2diaspora.php:263
+#: ../../include/event.php:27 ../../include/bb2diaspora.php:282
msgid "Finishes:"
msgstr "Endet:"
-#: ../../include/delivery.php:416 ../../include/notifier.php:629
+#: ../../include/delivery.php:424 ../../include/notifier.php:637
msgid "(no subject)"
msgstr "(kein Betreff)"
-#: ../../include/delivery.php:423 ../../include/enotify.php:16
-#: ../../include/notifier.php:636
+#: ../../include/delivery.php:431 ../../include/enotify.php:16
+#: ../../include/notifier.php:644
msgid "noreply"
msgstr "noreply"
@@ -4804,91 +4954,91 @@ msgstr[1] "%d Kontakte"
msgid "Search"
msgstr "Suche"
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Monday"
msgstr "Montag"
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Tuesday"
msgstr "Dienstag"
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Wednesday"
msgstr "Mittwoch"
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Thursday"
msgstr "Donnerstag"
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Friday"
msgstr "Freitag"
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Saturday"
msgstr "Samstag"
-#: ../../include/text.php:735
+#: ../../include/text.php:813
msgid "Sunday"
msgstr "Sonntag"
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "January"
msgstr "Januar"
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "February"
msgstr "Februar"
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "March"
msgstr "März"
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "April"
msgstr "April"
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "May"
msgstr "Mai"
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "June"
msgstr "Juni"
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "July"
msgstr "Juli"
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "August"
msgstr "August"
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "September"
msgstr "September"
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "October"
msgstr "Oktober"
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "November"
msgstr "November"
-#: ../../include/text.php:739
+#: ../../include/text.php:817
msgid "December"
msgstr "Dezember"
-#: ../../include/text.php:809
+#: ../../include/text.php:887
msgid "bytes"
msgstr "Byte"
-#: ../../include/text.php:901
+#: ../../include/text.php:982
msgid "Select an alternate language"
msgstr "Alternative Sprache auswählen"
-#: ../../include/text.php:913
+#: ../../include/text.php:994
msgid "default"
msgstr "standard"
@@ -4896,11 +5046,11 @@ msgstr "standard"
msgid "Sharing notification from Diaspora network"
msgstr "Freigabe-Benachrichtigung von Diaspora"
-#: ../../include/diaspora.php:1895
+#: ../../include/diaspora.php:1911
msgid "Attachments:"
msgstr "Anhänge:"
-#: ../../include/diaspora.php:2078
+#: ../../include/diaspora.php:2094
#, php-format
msgid "[Relayed] Comment authored by %s from network %s"
msgstr "[Weitergeleitet] Kommentar von %s aus dem %s Netzwerk"
@@ -4940,7 +5090,7 @@ msgstr "Gruppe bearbeiten"
msgid "Create a new group"
msgstr "Neue Gruppe erstellen"
-#: ../../include/nav.php:44 ../../boot.php:705
+#: ../../include/nav.php:44 ../../boot.php:709
msgid "Logout"
msgstr "Abmelden"
@@ -4948,7 +5098,7 @@ msgstr "Abmelden"
msgid "End this session"
msgstr "Diese Sitzung beenden"
-#: ../../include/nav.php:47 ../../boot.php:1327
+#: ../../include/nav.php:47 ../../boot.php:1331
msgid "Status"
msgstr "Status"
@@ -4960,7 +5110,7 @@ msgstr "Deine Beiträge und Unterhaltungen"
msgid "Your profile page"
msgstr "Deine Profilseite"
-#: ../../include/nav.php:49 ../../boot.php:1337
+#: ../../include/nav.php:49 ../../boot.php:1341
msgid "Photos"
msgstr "Bilder"
@@ -5032,39 +5182,43 @@ msgstr "Kontaktanfragen"
msgid "See all notifications"
msgstr "Alle Benachrichtigungen anzeigen"
-#: ../../include/nav.php:123
+#: ../../include/nav.php:120
+msgid "Mark all system notifications seen"
+msgstr "Markiere alle System Benachrichtigungen als gelesen"
+
+#: ../../include/nav.php:124
msgid "Private mail"
msgstr "Private Email"
-#: ../../include/nav.php:126
+#: ../../include/nav.php:127
msgid "Manage"
msgstr "Verwalten"
-#: ../../include/nav.php:126
+#: ../../include/nav.php:127
msgid "Manage other pages"
msgstr "Andere Seiten verwalten"
-#: ../../include/nav.php:130 ../../boot.php:936
+#: ../../include/nav.php:131 ../../boot.php:940
msgid "Profiles"
msgstr "Profile"
-#: ../../include/nav.php:130 ../../boot.php:936
+#: ../../include/nav.php:131 ../../boot.php:940
msgid "Manage/edit profiles"
msgstr "Profile verwalten/editieren"
-#: ../../include/nav.php:131
+#: ../../include/nav.php:132
msgid "Manage/edit friends and contacts"
msgstr "Freunde und Kontakte verwalten/editieren"
-#: ../../include/nav.php:138
+#: ../../include/nav.php:139
msgid "Admin"
msgstr "Administration"
-#: ../../include/nav.php:138
+#: ../../include/nav.php:139
msgid "Site setup and configuration"
msgstr "Einstellungen der Seite und Konfiguration"
-#: ../../include/nav.php:161
+#: ../../include/nav.php:162
msgid "Nothing new here"
msgstr "Keine Neuigkeiten."
@@ -5196,11 +5350,15 @@ msgstr "Sekunden"
msgid "%1$d %2$s ago"
msgstr "%1$d %2$s her"
-#: ../../include/poller.php:459
+#: ../../include/poller.php:474
msgid "From: "
msgstr "Von: "
-#: ../../include/bbcode.php:166 ../../include/bbcode.php:225
+#: ../../include/bbcode.php:202
+msgid "$1 wrote:"
+msgstr "$1 geschrieben:"
+
+#: ../../include/bbcode.php:216 ../../include/bbcode.php:282
msgid "Image/photo"
msgstr "Bild/Foto"
@@ -5248,6 +5406,15 @@ msgstr "Neue Nachricht auf %s empfangen"
msgid "%s sent you a new private message at %s."
msgstr "%s hat dir eine neue private Nachricht auf %s geschrieben."
+#: ../../include/enotify.php:31
+#, php-format
+msgid "%s sent you %s."
+msgstr "%s hat Dir geschickt %s"
+
+#: ../../include/enotify.php:31
+msgid "a private message"
+msgstr "eine private Nachricht"
+
#: ../../include/enotify.php:32
#, php-format
msgid "Please visit %s to view and/or reply to your private messages."
@@ -5263,84 +5430,138 @@ msgstr "%s kommentierte einen Beitrag auf %s"
msgid "%s commented on an item/conversation you have been following."
msgstr "%s hat einen Beitrag kommentiert, dem du folgst."
-#: ../../include/enotify.php:42 ../../include/enotify.php:51
-#: ../../include/enotify.php:60 ../../include/enotify.php:69
+#: ../../include/enotify.php:42
+#, php-format
+msgid "%s commented in %s."
+msgstr "%s wurde kommentiert in %s"
+
+#: ../../include/enotify.php:42
+msgid "a watched conversation"
+msgstr "eine beobachtete Unterhaltung"
+
+#: ../../include/enotify.php:44 ../../include/enotify.php:54
+#: ../../include/enotify.php:64 ../../include/enotify.php:74
#, php-format
msgid "Please visit %s to view and/or reply to the conversation."
msgstr "Bitte besuche %s, um die Konversation anzusehen und/oder zu kommentieren."
-#: ../../include/enotify.php:49
+#: ../../include/enotify.php:51
#, php-format
msgid "%s posted to your profile wall at %s"
msgstr "%s hat auf deine Pinnwand bei %s gepostet"
-#: ../../include/enotify.php:58
+#: ../../include/enotify.php:52
+#, php-format
+msgid "%s posted to %s"
+msgstr "%s schrieb an %s"
+
+#: ../../include/enotify.php:52
+msgid "your profile wall."
+msgstr "Deine Pinnwand"
+
+#: ../../include/enotify.php:61
#, php-format
msgid "%s tagged you at %s"
msgstr "%s hat dich auf %s erwähnt"
-#: ../../include/enotify.php:67
+#: ../../include/enotify.php:62
+#, php-format
+msgid "%s %s."
+msgstr "%s %s."
+
+#: ../../include/enotify.php:62
+msgid "tagged you"
+msgstr "erwähnte Dich"
+
+#: ../../include/enotify.php:71
#, php-format
msgid "%s tagged your post at %s"
msgstr "%s hat deinen Beitrag auf %s getaggt"
-#: ../../include/enotify.php:76
+#: ../../include/enotify.php:72
+#, php-format
+msgid "%s tagged %s"
+msgstr "%s markierte %s"
+
+#: ../../include/enotify.php:72
+msgid "your post"
+msgstr "Dein Beitrag"
+
+#: ../../include/enotify.php:81
#, php-format
msgid "Introduction received at %s"
msgstr "Kontaktanfrage auf %s erhalten"
-#: ../../include/enotify.php:77
+#: ../../include/enotify.php:82
#, php-format
msgid "You've received an introduction from '%s' at %s"
msgstr "Du hast eine Kontaktanfrage von '%s' auf %s erhalten"
-#: ../../include/enotify.php:78 ../../include/enotify.php:91
+#: ../../include/enotify.php:83
+#, php-format
+msgid "You've received %s from %s."
+msgstr "Du hast %s von %s erhalten."
+
+#: ../../include/enotify.php:83
+msgid "an introduction"
+msgstr "eine Einführung"
+
+#: ../../include/enotify.php:84 ../../include/enotify.php:101
#, php-format
msgid "You may visit their profile at %s"
msgstr "Hier kannst du das Profil betrachten: %s"
-#: ../../include/enotify.php:80
+#: ../../include/enotify.php:86
#, php-format
msgid "Please visit %s to approve or reject the introduction."
msgstr "Bitte besuche %s, um die Kontaktanfrage anzunehmen oder abzulehnen."
-#: ../../include/enotify.php:87
+#: ../../include/enotify.php:93
#, php-format
msgid "Friend suggestion received at %s"
msgstr "Kontaktvorschlag empfangen auf %s"
-#: ../../include/enotify.php:88
+#: ../../include/enotify.php:94
#, php-format
msgid "You've received a friend suggestion from '%s' at %s"
msgstr "Du hast von '%s' einen Kontaktvorschlag erhalten auf %s"
-#: ../../include/enotify.php:89
+#: ../../include/enotify.php:95
+#, php-format
+msgid "You've received %s for %s from %s."
+msgstr "Du hast %s für %s von %s erhalten."
+
+#: ../../include/enotify.php:96
+msgid "a friend suggestion"
+msgstr "ein Freunde Vorschlag"
+
+#: ../../include/enotify.php:99
msgid "Name:"
msgstr "Name:"
-#: ../../include/enotify.php:90
+#: ../../include/enotify.php:100
msgid "Photo:"
msgstr "Foto:"
-#: ../../include/enotify.php:93
+#: ../../include/enotify.php:103
#, php-format
msgid "Please visit %s to approve or reject the suggestion."
msgstr "Bitte besuche %s, um den Vorschlag zu akzeptieren oder abzulehnen."
-#: ../../include/items.php:2450
+#: ../../include/items.php:2511
msgid "A new person is sharing with you at "
msgstr "Eine neue Person teilt mit dir auf "
-#: ../../include/items.php:2450
+#: ../../include/items.php:2511
msgid "You have a new follower at "
msgstr "Du hast einen neuen Kontakt auf "
-#: ../../include/bb2diaspora.php:64
+#: ../../include/bb2diaspora.php:83
msgid "view full size"
msgstr "Volle Größe anzeigen"
-#: ../../include/bb2diaspora.php:113 ../../include/bb2diaspora.php:123
-#: ../../include/bb2diaspora.php:124
+#: ../../include/bb2diaspora.php:132 ../../include/bb2diaspora.php:142
+#: ../../include/bb2diaspora.php:143
msgid "image/photo"
msgstr "Bild/Foto"
@@ -5356,282 +5577,282 @@ msgstr "Bitte lade ein Profilbild hoch."
msgid "Welcome back "
msgstr "Willkommen zurück "
-#: ../../include/Contact.php:131 ../../include/conversation.php:744
+#: ../../include/Contact.php:131 ../../include/conversation.php:769
msgid "View status"
msgstr "Status anzeigen"
-#: ../../include/Contact.php:132 ../../include/conversation.php:745
+#: ../../include/Contact.php:132 ../../include/conversation.php:770
msgid "View profile"
msgstr "Profil anzeigen"
-#: ../../include/Contact.php:133 ../../include/conversation.php:746
+#: ../../include/Contact.php:133 ../../include/conversation.php:771
msgid "View photos"
msgstr "Fotos ansehen"
#: ../../include/Contact.php:134 ../../include/Contact.php:147
-#: ../../include/conversation.php:747
+#: ../../include/conversation.php:772
msgid "View recent"
msgstr "Neueste anzeigen"
#: ../../include/Contact.php:136 ../../include/Contact.php:147
-#: ../../include/conversation.php:749
+#: ../../include/conversation.php:774
msgid "Send PM"
msgstr "Private Nachricht senden"
-#: ../../include/conversation.php:141
+#: ../../include/conversation.php:163
msgid "post/item"
msgstr "Nachricht/Beitrag"
-#: ../../include/conversation.php:142
+#: ../../include/conversation.php:164
#, php-format
msgid "%1$s marked %2$s's %3$s as favorite"
msgstr "%1$s hat %2$s\\s %3$s als Favorit markiert"
-#: ../../include/conversation.php:279 ../../include/conversation.php:535
+#: ../../include/conversation.php:301 ../../include/conversation.php:562
msgid "Select"
msgstr "Auswählen"
-#: ../../include/conversation.php:294 ../../include/conversation.php:623
-#: ../../include/conversation.php:624
+#: ../../include/conversation.php:316 ../../include/conversation.php:648
+#: ../../include/conversation.php:649
#, php-format
msgid "View %s's profile @ %s"
msgstr "Das Profil von %s auf %s betrachten."
-#: ../../include/conversation.php:303 ../../include/conversation.php:635
+#: ../../include/conversation.php:325 ../../include/conversation.php:660
#, php-format
msgid "%s from %s"
msgstr "%s von %s"
-#: ../../include/conversation.php:319
+#: ../../include/conversation.php:341
msgid "View in context"
msgstr "Im Zusammenhang betrachten"
-#: ../../include/conversation.php:434
+#: ../../include/conversation.php:456
#, php-format
msgid "%d comment"
msgid_plural "%d comments"
msgstr[0] "%d Kommentar"
msgstr[1] "%d Kommentare"
-#: ../../include/conversation.php:437 ../../boot.php:444
+#: ../../include/conversation.php:459 ../../boot.php:448
msgid "show more"
msgstr "mehr anzeigen"
-#: ../../include/conversation.php:497
+#: ../../include/conversation.php:519
msgid "like"
msgstr "mag ich"
-#: ../../include/conversation.php:498
+#: ../../include/conversation.php:520
msgid "dislike"
msgstr "mag ich nicht"
-#: ../../include/conversation.php:500
+#: ../../include/conversation.php:522
msgid "Share this"
msgstr "Teilen"
-#: ../../include/conversation.php:500
+#: ../../include/conversation.php:522
msgid "share"
msgstr "Teilen"
-#: ../../include/conversation.php:545
+#: ../../include/conversation.php:572
msgid "add star"
msgstr "markieren"
-#: ../../include/conversation.php:546
+#: ../../include/conversation.php:573
msgid "remove star"
msgstr "Markierung entfernen"
-#: ../../include/conversation.php:547
+#: ../../include/conversation.php:574
msgid "toggle star status"
msgstr "Markierung umschalten"
-#: ../../include/conversation.php:550
+#: ../../include/conversation.php:577
msgid "starred"
msgstr "markiert"
-#: ../../include/conversation.php:551
+#: ../../include/conversation.php:578
msgid "add tag"
msgstr "Tag hinzufügen"
-#: ../../include/conversation.php:625
+#: ../../include/conversation.php:650
msgid "to"
msgstr "to"
-#: ../../include/conversation.php:626
+#: ../../include/conversation.php:651
msgid "Wall-to-Wall"
msgstr "Wall-to-Wall"
-#: ../../include/conversation.php:627
+#: ../../include/conversation.php:652
msgid "via Wall-To-Wall:"
msgstr "via Wall-To-Wall:"
-#: ../../include/conversation.php:669
+#: ../../include/conversation.php:694
msgid "Delete Selected Items"
msgstr "Lösche die markierten Beiträge"
-#: ../../include/conversation.php:801
+#: ../../include/conversation.php:826
#, php-format
msgid "%s likes this."
msgstr "%s mag das."
-#: ../../include/conversation.php:801
+#: ../../include/conversation.php:826
#, php-format
msgid "%s doesn't like this."
msgstr "%s mag das nicht."
-#: ../../include/conversation.php:805
+#: ../../include/conversation.php:830
#, php-format
msgid "<span %1$s>%2$d people</span> like this."
msgstr "<span %1$s>%2$d Leute</span> mögen das."
-#: ../../include/conversation.php:807
+#: ../../include/conversation.php:832
#, php-format
msgid "<span %1$s>%2$d people</span> don't like this."
msgstr "<span %1$s>%2$d Leute</span> mögen das nicht."
-#: ../../include/conversation.php:813
+#: ../../include/conversation.php:838
msgid "and"
msgstr "und"
-#: ../../include/conversation.php:816
+#: ../../include/conversation.php:841
#, php-format
msgid ", and %d other people"
msgstr " und %d andere"
-#: ../../include/conversation.php:817
+#: ../../include/conversation.php:842
#, php-format
msgid "%s like this."
msgstr "%s mögen das."
-#: ../../include/conversation.php:817
+#: ../../include/conversation.php:842
#, php-format
msgid "%s don't like this."
msgstr "%s mögen das nicht."
-#: ../../include/conversation.php:842
+#: ../../include/conversation.php:867
msgid "Visible to <strong>everybody</strong>"
msgstr "Für <strong>Jedermann</strong> sichtbar"
-#: ../../include/conversation.php:844
+#: ../../include/conversation.php:869
msgid "Please enter a video link/URL:"
msgstr "Bitte Link/URL zum Video einfügen:"
-#: ../../include/conversation.php:845
+#: ../../include/conversation.php:870
msgid "Please enter an audio link/URL:"
msgstr "Bitte Link/URL zum Audio einfügen:"
-#: ../../include/conversation.php:846
+#: ../../include/conversation.php:871
msgid "Tag term:"
msgstr "Tag:"
-#: ../../include/conversation.php:847
+#: ../../include/conversation.php:872
msgid "Where are you right now?"
msgstr "Wo hältst du dich jetzt gerade auf?"
-#: ../../include/conversation.php:848
+#: ../../include/conversation.php:873
msgid "Enter a title for this item"
msgstr "Gib den Titel für diesen Beitrag ein"
-#: ../../include/conversation.php:891
+#: ../../include/conversation.php:916
msgid "upload photo"
msgstr "Bild hochladen"
-#: ../../include/conversation.php:893
+#: ../../include/conversation.php:918
msgid "attach file"
msgstr "Datei anhängen"
-#: ../../include/conversation.php:895
+#: ../../include/conversation.php:920
msgid "web link"
msgstr "Weblink"
-#: ../../include/conversation.php:896
+#: ../../include/conversation.php:921
msgid "Insert video link"
msgstr "Video-Adresse einfügen"
-#: ../../include/conversation.php:897
+#: ../../include/conversation.php:922
msgid "video link"
msgstr "Video-Link"
-#: ../../include/conversation.php:898
+#: ../../include/conversation.php:923
msgid "Insert audio link"
msgstr "Audio-Adresse einfügen"
-#: ../../include/conversation.php:899
+#: ../../include/conversation.php:924
msgid "audio link"
msgstr "Audio-Link"
-#: ../../include/conversation.php:901
+#: ../../include/conversation.php:926
msgid "set location"
msgstr "Ort setzen"
-#: ../../include/conversation.php:903
+#: ../../include/conversation.php:928
msgid "clear location"
msgstr "Ort löschen"
-#: ../../include/conversation.php:908
+#: ../../include/conversation.php:933
msgid "permissions"
msgstr "Zugriffsrechte"
-#: ../../boot.php:442
+#: ../../boot.php:446
msgid "Delete this item?"
msgstr "Diesen Beitrag löschen?"
-#: ../../boot.php:445
+#: ../../boot.php:449
msgid "show fewer"
msgstr "weniger anzeigen"
-#: ../../boot.php:688
+#: ../../boot.php:692
msgid "Create a New Account"
msgstr "Neuen Account erstellen"
-#: ../../boot.php:708
+#: ../../boot.php:712
msgid "Nickname or Email address: "
msgstr "Spitzname oder Email-Adresse: "
-#: ../../boot.php:709
+#: ../../boot.php:713
msgid "Password: "
msgstr "Passwort: "
-#: ../../boot.php:712
+#: ../../boot.php:716
msgid "Or login using OpenID: "
msgstr "Oder melde dich mit deiner OpenID an: "
-#: ../../boot.php:718
+#: ../../boot.php:722
msgid "Forgot your password?"
msgstr "Passwort vergessen?"
-#: ../../boot.php:875
+#: ../../boot.php:879
msgid "Edit profile"
msgstr "Profil bearbeiten"
-#: ../../boot.php:1042 ../../boot.php:1113
+#: ../../boot.php:1046 ../../boot.php:1117
msgid "g A l F d"
msgstr "l. d, F G \\U\\h\\\\r"
-#: ../../boot.php:1043 ../../boot.php:1114
+#: ../../boot.php:1047 ../../boot.php:1118
msgid "F d"
msgstr "d. F"
-#: ../../boot.php:1068
+#: ../../boot.php:1072
msgid "Birthday Reminders"
msgstr "Geburtstagserinnerungen"
-#: ../../boot.php:1069
+#: ../../boot.php:1073
msgid "Birthdays this week:"
msgstr "Geburtstage diese Woche:"
-#: ../../boot.php:1092 ../../boot.php:1156
+#: ../../boot.php:1096 ../../boot.php:1160
msgid "[today]"
msgstr "[heute]"
-#: ../../boot.php:1137
+#: ../../boot.php:1141
msgid "Event Reminders"
msgstr "Veranstaltungserinnerungen"
-#: ../../boot.php:1138
+#: ../../boot.php:1142
msgid "Events this week:"
msgstr "Veranstaltungen diese Woche"
-#: ../../boot.php:1150
+#: ../../boot.php:1154
msgid "[No description]"
msgstr "[keine Beschreibung]"
diff --git a/view/de/strings.php b/view/de/strings.php
index 166880f0d..284c87f2f 100755
--- a/view/de/strings.php
+++ b/view/de/strings.php
@@ -34,13 +34,13 @@ $a->strings["Friend suggestion sent."] = "Kontaktvorschlag gesendet.";
$a->strings["Suggest Friends"] = "Kontakte vorschlagen";
$a->strings["Suggest a friend for %s"] = "Schlage %s einen Kontakt vor";
$a->strings["Event description and start time are required."] = "Ereignis Beschreibung und Startzeit sind erforderlich.";
+$a->strings["l, F j"] = "l, F j";
+$a->strings["Edit event"] = "Veranstaltung bearbeiten";
+$a->strings["link to source"] = "Link zum Originalbeitrag";
$a->strings["Events"] = "Veranstaltungen";
$a->strings["Create New Event"] = "Neue Veranstaltung erstellen";
$a->strings["Previous"] = "Vorherige";
$a->strings["Next"] = "Nächste";
-$a->strings["l, F j"] = "l, F j";
-$a->strings["Edit event"] = "Veranstaltung bearbeiten";
-$a->strings["link to source"] = "Link zum Originalbeitrag";
$a->strings["hour:minute"] = "Stunde:Minute";
$a->strings["Event details"] = "Veranstaltungsdetails";
$a->strings["Format is %s %s. Starting date and Description are required."] = "Format ist %s %s. Anfangsdatum und Beschreibung sind notwendig.";
@@ -251,6 +251,7 @@ $a->strings["Welcome to %s"] = "Willkommen zu %s";
$a->strings["Invalid request identifier."] = "Invalid request identifier.";
$a->strings["Discard"] = "Verwerfen";
$a->strings["Ignore"] = "Ignorieren";
+$a->strings["System"] = "System";
$a->strings["Network"] = "Netzwerk";
$a->strings["Personal"] = "Persönlich";
$a->strings["Home"] = "Pinnwand";
@@ -282,15 +283,20 @@ $a->strings["%s is now friends with %s"] = "%s ist jetzt mit %s befreundet";
$a->strings["%s created a new post"] = "%s hat einen neuen Beitrag erstellt";
$a->strings["%s commented on %s's post"] = "%s hat %ss Beitrag kommentiert";
$a->strings["No more network notifications."] = "Keine weiteren Netzwerk-Benachrichtigungen.";
+$a->strings["Network Notifications"] = "Netzwerk Benachrichtigungen";
+$a->strings["No more system notifications."] = "Keine weiteren System Benachrichtigungen.";
+$a->strings["System Notifications"] = "System Benachrichtigungen";
$a->strings["No more personal notifications."] = "Keine weiteren persönlichen Benachrichtigungen";
+$a->strings["Personal Notifications"] = "Persönliche Benachrichtigungen";
$a->strings["No more home notifications."] = "Keine weiteren Pinnwand-Benachrichtigungen";
+$a->strings["Home Notifications"] = "Pinnwand Benachrichtigungen";
$a->strings["Could not access contact record."] = "Konnte nicht auf die Kontaktdaten zugreifen.";
$a->strings["Could not locate selected profile."] = "Konnte das ausgewählte Profil nicht finden.";
$a->strings["Contact updated."] = "Kontakt aktualisiert.";
$a->strings["Contact has been blocked"] = "Kontakt wurde blockiert";
$a->strings["Contact has been unblocked"] = "Kontakt wurde wieder freigegeben";
-$a->strings["Contact has been ignored"] = "Der Kontakt wurde ignoriert";
-$a->strings["Contact has been unignored"] = "Kontakt wurde ignoriert";
+$a->strings["Contact has been ignored"] = "Kontakt wurde ignoriert";
+$a->strings["Contact has been unignored"] = "Kontakt wird nicht mehr ignoriert";
$a->strings["stopped following"] = "wird nicht mehr gefolgt";
$a->strings["Contact has been removed."] = "Kontakt wurde entfernt.";
$a->strings["You are mutual friends with %s"] = "Du hast mit %s eine beidseitige Freundschaft";
@@ -328,17 +334,19 @@ $a->strings["Update now"] = "Jetzt aktualisieren";
$a->strings["Currently blocked"] = "Derzeit geblockt";
$a->strings["Currently ignored"] = "Derzeit ignoriert";
$a->strings["Replies/likes to your public posts <strong>may</strong> still be visible"] = "Antworten/Likes auf deine öffentlichen Beiträge <strong>könnten</strong> weiterhin sichtbar sein";
-$a->strings["Contacts"] = "Kontakte";
-$a->strings["Show Unblocked Contacts"] = "Nicht geblockte Kontakte anzeigen";
-$a->strings["Show Blocked Contacts"] = "Blockierte Kontakte anzeigen";
-$a->strings["Show All Contacts"] = "Alle Kontakte anzeigen";
-$a->strings["Search your contacts"] = "Suche in deinen Kontakten";
-$a->strings["Finding: "] = "Funde: ";
-$a->strings["Find"] = "Finde";
+$a->strings["All Contacts"] = "Alle Kontakte";
+$a->strings["Unblocked Contacts"] = "Nicht blockierte Kontakte";
+$a->strings["Blocked Contacts"] = "Blockierte Kontakte";
+$a->strings["Ignored Contacts"] = "Ignorierte Kontakte";
+$a->strings["Hidden Contacts"] = "Verborgene Kontakte";
$a->strings["Mutual Friendship"] = "Beidseitige Freundschaft";
$a->strings["is a fan of yours"] = "ist ein Fan von dir";
$a->strings["you are a fan of"] = "du bist Fan von";
$a->strings["Edit contact"] = "Kontakt bearbeiten";
+$a->strings["Contacts"] = "Kontakte";
+$a->strings["Search your contacts"] = "Suche in deinen Kontakten";
+$a->strings["Finding: "] = "Funde: ";
+$a->strings["Find"] = "Finde";
$a->strings["No valid account found."] = "Kein gültiger Account gefunden.";
$a->strings["Password reset request issued. Check your email."] = "Zurücksetzen des Passworts eingeleitet. Bitte überprüfe deine E-Mail.";
$a->strings["Password reset requested at %s"] = "Anfrage zum Zurücksetzen des Passworts auf %s erhalten";
@@ -365,7 +373,7 @@ $a->strings["Password update failed. Please try again."] = "Aktualisierung des P
$a->strings[" Please use a shorter name."] = " Bitte verwende einen kürzeren Namen.";
$a->strings[" Name too short."] = " Name ist zu kurz.";
$a->strings[" Not valid email."] = " Keine gültige E-Mail.";
-$a->strings[" Cannot change to that email."] = " Cannot change to that email.";
+$a->strings[" Cannot change to that email."] = "Ändern der E-Mail nicht möglich. ";
$a->strings["Settings updated."] = "Einstellungen aktualisiert.";
$a->strings["Account settings"] = "Account Einstellungen";
$a->strings["Connector settings"] = "Connector-Einstellungen";
@@ -452,9 +460,9 @@ $a->strings["Notification Settings"] = "Benachrichtigungseinstellungen";
$a->strings["Send a notification email when:"] = "Benachrichtigungs-E-Mail senden wenn:";
$a->strings["You receive an introduction"] = "Du eine Kontaktanfrage erhältst";
$a->strings["Your introductions are confirmed"] = "Eine deiner Kontaktanfragen akzeptiert wurde";
-$a->strings["Someone writes on your profile wall"] = "Jemand etwas auf deine Pinnwand schreibt";
-$a->strings["Someone writes a followup comment"] = "Jemand auch einen Kommentar verfasst";
-$a->strings["You receive a private message"] = "Du eine private Nachricht erhältst";
+$a->strings["Someone writes on your profile wall"] = "Jemand schreibt etwas auf deine Pinnwand";
+$a->strings["Someone writes a followup comment"] = "Jemand verfasst auch einen Kommentar";
+$a->strings["You receive a private message"] = "Du erhältst eine private Nachricht";
$a->strings["You receive a friend suggestion"] = "Du eine Empfehlung erhältst";
$a->strings["You are tagged in a post"] = "Du wurdest in einem Beitrag erwähnt";
$a->strings["Advanced Page Settings"] = "Erweiterte Seiten-Einstellungen";
@@ -485,16 +493,18 @@ $a->strings["Personal Notes"] = "Persönliche Notizen";
$a->strings["Save"] = "Speichern";
$a->strings["Welcome to Friendica"] = "Willkommen bei Friendica";
$a->strings["New Member Checklist"] = "Checkliste für neue Mitglieder";
-$a->strings["We would like to offer some tips and links to help make your experience enjoyable. Click any item to visit the relevant page."] = "Wir möchten dir einige Tipps und Links anbieten, um deine Erfahrung mit Friendica so angenehm wie möglich zu machen. Klicke einfach einen Aspekt an, um weitere Informationen zu erhalten.";
-$a->strings["On your <em>Settings</em> page - change your initial password. Also make a note of your Identity Address. This will be useful in making friends."] = "Ändere dein anfängliches Passwort auf der <em>Einstellungen</em> Seite. Bei dieser Gelegenheit solltest du dir die Adresse deines Profils merken, diese wird benötigt um mit Anderen in Kontakt zu treten.";
+$a->strings["We would like to offer some tips and links to help make your experience enjoyable. Click any item to visit the relevant page. A link to this page will be visible from your home page for two weeks after your initial registration and then will quietly disappear."] = "Wir möchten Dir einige Tipps und Links anbieten, die Dir helfen könnten, den Einstieg angenehmer zu machen. Klicke auf ein Element, um die entsprechende Seite zu besuchen. Ein Link zu dieser Seite hier bleibt sichtbar über Deine Pinnwand für zwei Wochen nach dem Registrierungsdatum und wird dann verschwinden.";
+$a->strings["On your <em>Settings</em> page - change your initial password. Also make a note of your Identity Address. This looks just like an email address - and will be useful in making friends on the free social web."] = "Ändere bitte unter <em>Einstellungen</em> Dein Passwort. Außerdem merke Dir Deine Indentifikations Adresse. Diese sieht aus wie eine E-Mail Adresse und wird benötig um Freunschaften mit anderen im Friendica Netzwerk zu schliessen.";
$a->strings["Review the other settings, particularly the privacy settings. An unpublished directory listing is like having an unlisted phone number. In general, you should probably publish your listing - unless all of your friends and potential friends know exactly how to find you."] = "Überprüfe die restlichen Einstellungen, insbesondere die Einstellungen zur Privatsphäre. Wenn du dein Profil nicht veröffentlichst ist das wie wenn niemand deine Telefonnummer kennt. Im Allgemeinen solltest du es veröffentlichen - außer all deine Freunde und potentiellen Freunde wissen wie man dich findet.";
$a->strings["Upload a profile photo if you have not done so already. Studies have shown that people with real photos of themselves are ten times more likely to make friends than people who do not."] = "Lade ein Profilbild hoch falls du es noch nicht getan hast. Studien haben gezeigt, dass es zehnmal wahrscheinlicher ist neue Freunde zu finden, wenn du ein Bild von dir selbst verwendest als wenn du dies nicht tust.";
$a->strings["Authorise the Facebook Connector if you currently have a Facebook account and we will (optionally) import all your Facebook friends and conversations."] = "Richte die Verbindung zu Facebook ein, wenn du im Augenblick ein Facebook Konto hast und (optional) deine Facebook Freunde und Unterhaltungen importieren willst.";
+$a->strings["<em>If</em> this is your own personal server, installing the Facebook addon may ease your transition to the free social web."] = "<em>Wenn</em> dies dein privater Server ist könnte die Installation des Facebook Connectors deinen Umzug ins freie Soziale Netz angenehmer gestalten.";
$a->strings["Enter your email access information on your Connector Settings page if you wish to import and interact with friends or mailing lists from your email INBOX"] = "Gib deine E-Mail-Zugangsinformationen auf der Connector-Einstellungsseite ein, falls du E-Mails aus deinem Posteingang importieren und mit Freunden und Mailinglisten interagieren willlst.";
$a->strings["Edit your <strong>default</strong> profile to your liking. Review the settings for hiding your list of friends and hiding the profile from unknown visitors."] = "Editiere dein <strong>Standard</strong> Profil nach deinen Vorlieben. Überprüfe die Einstellungen zum Verbergen deiner Freundesliste vor unbekannten Betrachtern des Profils.";
$a->strings["Set some public keywords for your default profile which describe your interests. We may be able to find other people with similar interests and suggest friendships."] = "Trage ein paar öffentliche Stichwörter in dein Standardprofil ein, die deine Interessen beschreiben. Eventuell sind wir in der Lage Leute zu finden, die deine Interessen teilen und können dir dann Kontakte vorschlagen.";
$a->strings["Your Contacts page is your gateway to managing friendships and connecting with friends on other networks. Typically you enter their address or site URL in the <em>Add New Contact</em> dialog."] = "Die Kontakte-Seite ist die Einstiegsseite, von der aus du Kontakte verwalten und dich mit Freunden in anderen Netzwerken verbinden kannst. Normalerweise gibst du dazu einfach ihre Adresse oder die URL der Seite im Kasten <em>Neuen Kontakt hinzufügen</em> ein.";
$a->strings["The Directory page lets you find other people in this network or other federated sites. Look for a <em>Connect</em> or <em>Follow</em> link on their profile page. Provide your own Identity Address if requested."] = "Ãœber die Verzeichnisseite kannst du andere Personen auf diesem Server oder anderen verteilten Seiten finden. Halte nach einem <em>Verbinden</em> oder <em>Folgen</em> Link auf deren Profilseiten Ausschau und gib deine eigene Profiladresse an falls du danach gefragt wirst.";
+$a->strings["On the side panel of the Contacts page are several tools to find new friends. We can match people by interest, look up people by name or interest, and provide suggestions based on network relationships. On a brand new site, friend suggestions will usually begin to be populated within 24 hours."] = "Im seitlichen Bedienfeld der Kontakte-Seite gibt es diverse Werkzeuge, um neue Freunde zu finden. Wir können Menschen mit den gleichen Interessen finden, anhand von Namen oder Interessen suchen oder aber aufgrund vorhandener Kontakte neue Freunde vorschlagen.\nAuf einer brandneuen - soeben erstellten - Seite starten die Kontaktvorschläge innerhalb von 24 Stunden.";
$a->strings["Once you have made some friends, organize them into private conversation groups from the sidebar of your Contacts page and then you can interact with each group privately on your Network page."] = "Sobald du einige Freunde gefunden hast, organisiere sie in Gruppen zur privaten Kommunikation im Seitenmenü der Kontakte-Seite. Du kannst dann mit jeder dieser Gruppen von der Netzwerkseite aus privat interagieren.";
$a->strings["Our <strong>help</strong> pages may be consulted for detail on other program features and resources."] = "Unsere <strong>Hilfe</strong> Seiten können herangezogen werden, um weitere Einzelheiten zu andern Programm Features zu erhalten.";
$a->strings["Item not available."] = "Beitrag nicht verfügbar.";
@@ -511,14 +521,13 @@ $a->strings["Unable to remove group."] = "Konnte die Gruppe nicht entfernen.";
$a->strings["Click on a contact to add or remove."] = "Klicke einen Kontakt an, um ihn hinzuzufügen oder zu entfernen";
$a->strings["Group Editor"] = "Gruppeneditor";
$a->strings["Members"] = "Mitglieder";
-$a->strings["All Contacts"] = "Alle Kontakte";
$a->strings["Invalid profile identifier."] = "Ungültiger Profil-Bezeichner";
$a->strings["Profile Visibility Editor"] = "Editor für die Profil-Sichtbarkeit";
$a->strings["Profile"] = "Profil";
$a->strings["Visible To"] = "Sichtbar für";
$a->strings["All Contacts (with secure profile access)"] = "Alle Kontakte (mit gesichertem Profilzugriff)";
-$a->strings["View Contacts"] = "Kontakte anzeigen";
$a->strings["No contacts."] = "Keine Kontakte.";
+$a->strings["View Contacts"] = "Kontakte anzeigen";
$a->strings["An invitation is required."] = "Du benötigst eine Einladung.";
$a->strings["Invitation could not be verified."] = "Die Einladung konnte nicht überprüft werden.";
$a->strings["Invalid OpenID url"] = "Ungültige OpenID URL";
@@ -531,7 +540,7 @@ $a->strings["Not a valid email address."] = "Keine gültige E-Mail-Adresse.";
$a->strings["Cannot use that email."] = "Konnte diese E-Mail-Adresse nicht verwenden.";
$a->strings["Your \"nickname\" can only contain \"a-z\", \"0-9\", \"-\", and \"_\", and must also begin with a letter."] = "Dein Spitzname darf nur aus Buchstaben und Zahlen (\"a-z\",\"0-9\", \"_\" und \"-\") bestehen, außerdem muss er mit einem Buchstaben beginnen.";
$a->strings["Nickname is already registered. Please choose another."] = "Dieser Spitzname ist bereits vergeben. Bitte wähle einen anderen.";
-$a->strings["SERIOUS ERROR: Generation of security keys failed."] = "SERIOUS ERROR: Generation of security keys failed.";
+$a->strings["SERIOUS ERROR: Generation of security keys failed."] = "FATALER FEHLER: Sicherheitsschlüssel konnten nicht erzeugt werden.";
$a->strings["An error occurred during registration. Please try again."] = "Wärend der Anmeldung ist ein Fehler aufgetreten. Bitte versuche es noch einmal.";
$a->strings["An error occurred creating your default profile. Please try again."] = "Bei der Erstellung des Standard-Profils ist ein Fehler aufgetreten. Bitte versuche es noch einmal.";
$a->strings["Registration details for %s"] = "Details der Registration von %s";
@@ -614,6 +623,7 @@ $a->strings["No friends to display."] = "Keine Freunde zum Anzeigen.";
$a->strings["Site"] = "Seite";
$a->strings["Users"] = "Nutzer";
$a->strings["Plugins"] = "Plugins";
+$a->strings["Themes"] = "Themen";
$a->strings["Logs"] = "Protokolle";
$a->strings["User registrations waiting for confirmation"] = "Nutzeranmeldungen die auf Bestätigung warten";
$a->strings["Administration"] = "Administration";
@@ -685,6 +695,7 @@ $a->strings["Disable"] = "Ausschalten";
$a->strings["Enable"] = "Einschalten";
$a->strings["Toggle"] = "Umschalten";
$a->strings["Settings"] = "Einstellungen";
+$a->strings["No themes found."] = "Keine Themen gefunden.";
$a->strings["Log settings updated."] = "Protokolleinstellungen aktualisiert.";
$a->strings["Clear"] = "löschen";
$a->strings["Debugging"] = "Protokoll führen";
@@ -941,6 +952,16 @@ $a->strings["Blocked %s - Click to open/close"] = "%s blockiert - Zum Öffnen/Sc
$a->strings["Unblock Author"] = "Autor freischalten";
$a->strings["Block Author"] = "Autor blockieren";
$a->strings["blockem settings updated"] = "blockem Einstellungen aktualisiert";
+$a->strings[":-)"] = ":-)";
+$a->strings[":-("] = ":-(";
+$a->strings["lol"] = "lol";
+$a->strings["Quick Comment Settings"] = "Schnell-Kommentar Einstellungen";
+$a->strings["Enter quick comments, one per line"] = "Gibt ein Schnell-Kommentar pro Zeile ein";
+$a->strings["Quick Comment settings saved."] = "Schnell-Kommentare Einstellungen gespeichert";
+$a->strings["Tile Server URL"] = "Tile Server URL";
+$a->strings["A list of <a href=\"http://wiki.openstreetmap.org/wiki/TMS\" target=\"_blank\">public tile servers</a>"] = "Eine Liste <a href=\"http://wiki.openstreetmap.org/wiki/TMS\" target=\"_blank\">öffentlicher Tile Server</a>";
+$a->strings["Default zoom"] = "Standard Zoom";
+$a->strings["The default zoom level. (1:world, 18:highest)"] = "Standard Zoo,level (1: Welt; 18: höchstes)";
$a->strings["Editplain settings updated."] = "Editplain Einstellungen aktualisiert";
$a->strings["Editplain Settings"] = "Editplain Einstellungen";
$a->strings["Disable richtext status editor"] = "RichText Editor deaktivieren";
@@ -967,6 +988,7 @@ $a->strings["Current StatusNet API is"] = "Derzeitige StatusNet-API-URL lautet";
$a->strings["Cancel StatusNet Connection"] = "Verbindung zum StatusNet Server abbrechen";
$a->strings["Currently connected to: "] = "Momentan verbunden mit: ";
$a->strings["If enabled all your <strong>public</strong> postings can be posted to the associated StatusNet account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry."] = "Wenn aktiviert können all deine <strong>öffentlichen</strong> Einträge auf dem verbundenen StatusNet Konto veröffentlicht werden. Du kannst das (hier) als Standardverhalten einstellen oder beim Schreiben eines Beitrags in den Beitragsoptionen festlegen.";
+$a->strings["<strong>Note</strong>: Due your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to StatusNet will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted."] = "<strong>Hinweis</strong>: Aufgrund deiner Privatsphären Einstellungen (<em>Profil-Details vor unbekannten Betrachtern verbergen?</em>) wird der Link der eventuell an an deinen StatusNet Account weitergeleitete angehangen wird um auf den original Artikel zu verweisen den Betrachter auf eine leere Seite führen, auf der er darüber informiert wird, dass der Zugriff eingeschränkt wurde.";
$a->strings["Allow posting to StatusNet"] = "Veröffentlichung bei StatusNet erlauben";
$a->strings["Send public postings to StatusNet by default"] = "Veröffentliche öffentliche Beiträge standardmäßig bei StatusNet";
$a->strings["Clear OAuth configuration"] = "OAuth-Konfiguration löschen";
@@ -987,11 +1009,18 @@ $a->strings["WordPress username"] = "WordPress-Benutzername";
$a->strings["WordPress password"] = "WordPress-Passwort";
$a->strings["WordPress API URL"] = "WordPress-API-URL";
$a->strings["Post to WordPress by default"] = "Standardmäßig auf WordPress veröffentlichen";
+$a->strings["\"Show more\" Settings"] = "\"Mehr zeigen\" Einstellungen";
+$a->strings["Enable Show More"] = "Aktiviere \"Mehr zeigen\"";
+$a->strings["Cutting posts after how much characters"] = "Begrenze Beiträge nach der Anzahl der Buchstaben";
+$a->strings["Show More Settings saved."] = "\"Mehr zeigen\" Einstellungen gesichert.";
+$a->strings["Show More"] = "\"Mehr zeigen\"";
$a->strings["This website is tracked using the <a href='http://www.piwik.org'>Piwik</a> analytics tool."] = "Diese Website benutzt <a href='http://www.piwik.org'>Piwik</a>, eine Open Source-Software zur statistischen Auswertung der Besucherzugriffe.";
$a->strings["If you do not want that your visits are logged this way you <a href='%s'>can set a cookie to prevent Piwik from tracking further visits of the site</a> (opt-out)."] = "Wenn Du nicht willst, dass Deine Besuche auf diese Weise gespeichert werden, kannst Du <a href='%s'>ein Cookie setzen</a>. Dann wird Piwik Dich auf dieser Website nicht mehr verfolgen (opt-out).";
$a->strings["Piwik Base URL"] = "Piwik Basis URL";
+$a->strings["Absolute path to your Piwik installation. (without protocol (http/s), with trailing slash)"] = "Absoluter Pfad zu deiner Piwik Installation (ohen Protokoll (http/s) und mit abschließendem Schrägstrich)";
$a->strings["Site ID"] = "Seiten ID";
$a->strings["Show opt-out cookie link?"] = "Link zum Setzen des Opt-Out Cookies anzeigen?";
+$a->strings["Asynchronous tracking"] = "Asynchroned Tracken";
$a->strings["Post to Twitter"] = "Bei Twitter veröffentlichen";
$a->strings["Twitter settings updated."] = "Twitter Einstellungen aktualisiert.";
$a->strings["Twitter Posting Settings"] = "Twitter-Beitragseinstellungen";
@@ -1000,6 +1029,7 @@ $a->strings["At this Friendica instance the Twitter plugin was enabled but you h
$a->strings["Log in with Twitter"] = "bei Twitter anmelden";
$a->strings["Copy the PIN from Twitter here"] = "Kopiere die Twitter-PIN hier her";
$a->strings["If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry."] = "Wenn aktiviert können all deine <strong>öffentlichen</strong> Einträge auf dem verbundenen Twitter Konto veröffentlicht werden. Du kannst dies (hier) als Standardverhalten einstellen oder beim Schreiben eines Beitrags in den Beitragsoptionen festlegen.";
+$a->strings["<strong>Note</strong>: Due your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted."] = "<strong>Hinweis</strong>: Aufgrund deiner Privatsphären Einstellungen (<em>Profil-Details vor unbekannten Betrachtern verbergen?</em>) wird der Link der eventuell an an deinen Twitter Account weitergeleitete angehangen wird um auf den original Artikel zu verweisen den Betrachter auf eine leere Seite führen, auf der er darüber informiert wird, dass der Zugriff eingeschränkt wurde.";
$a->strings["Allow posting to Twitter"] = "Veröffentlichung bei Twitter erlauben";
$a->strings["Send public postings to Twitter by default"] = "Veröffentliche öffentliche Beiträge standardmäßig bei Twitter";
$a->strings["Consumer key"] = "Consumer Key";
@@ -1170,6 +1200,7 @@ $a->strings["People directory"] = "Nutzerverzeichnis";
$a->strings["Conversations from your friends"] = "Unterhaltungen deiner Kontakte";
$a->strings["Friend Requests"] = "Kontaktanfragen";
$a->strings["See all notifications"] = "Alle Benachrichtigungen anzeigen";
+$a->strings["Mark all system notifications seen"] = "Markiere alle System Benachrichtigungen als gelesen";
$a->strings["Private mail"] = "Private Email";
$a->strings["Manage"] = "Verwalten";
$a->strings["Manage other pages"] = "Andere Seiten verwalten";
@@ -1214,6 +1245,7 @@ $a->strings["second"] = "Sekunde";
$a->strings["seconds"] = "Sekunden";
$a->strings["%1\$d %2\$s ago"] = "%1\$d %2\$s her";
$a->strings["From: "] = "Von: ";
+$a->strings["$1 wrote:"] = "$1 geschrieben:";
$a->strings["Image/photo"] = "Bild/Foto";
$a->strings["Cannot locate DNS info for database server '%s'"] = "Kann die DNS Informationen für den Datenbanken Server '%s' nicht ermitteln.";
$a->strings["[no subject]"] = "[kein Betreff]";
@@ -1225,19 +1257,33 @@ $a->strings["Thank You,"] = "Danke,";
$a->strings["%s Administrator"] = "der Administrator von %s";
$a->strings["New mail received at %s"] = "Neue Nachricht auf %s empfangen";
$a->strings["%s sent you a new private message at %s."] = "%s hat dir eine neue private Nachricht auf %s geschrieben.";
+$a->strings["%s sent you %s."] = "%s hat Dir geschickt %s";
+$a->strings["a private message"] = "eine private Nachricht";
$a->strings["Please visit %s to view and/or reply to your private messages."] = "Bitte besuche %s, um deine privaten Nachrichten anzusehen und/oder zu beantworten.";
$a->strings["%s commented on an item at %s"] = "%s kommentierte einen Beitrag auf %s";
$a->strings["%s commented on an item/conversation you have been following."] = "%s hat einen Beitrag kommentiert, dem du folgst.";
+$a->strings["%s commented in %s."] = "%s wurde kommentiert in %s";
+$a->strings["a watched conversation"] = "eine beobachtete Unterhaltung";
$a->strings["Please visit %s to view and/or reply to the conversation."] = "Bitte besuche %s, um die Konversation anzusehen und/oder zu kommentieren.";
$a->strings["%s posted to your profile wall at %s"] = "%s hat auf deine Pinnwand bei %s gepostet";
+$a->strings["%s posted to %s"] = "%s schrieb an %s";
+$a->strings["your profile wall."] = "Deine Pinnwand";
$a->strings["%s tagged you at %s"] = "%s hat dich auf %s erwähnt";
+$a->strings["%s %s."] = "%s %s.";
+$a->strings["tagged you"] = "erwähnte Dich";
$a->strings["%s tagged your post at %s"] = "%s hat deinen Beitrag auf %s getaggt";
+$a->strings["%s tagged %s"] = "%s markierte %s";
+$a->strings["your post"] = "Dein Beitrag";
$a->strings["Introduction received at %s"] = "Kontaktanfrage auf %s erhalten";
$a->strings["You've received an introduction from '%s' at %s"] = "Du hast eine Kontaktanfrage von '%s' auf %s erhalten";
+$a->strings["You've received %s from %s."] = "Du hast %s von %s erhalten.";
+$a->strings["an introduction"] = "eine Einführung";
$a->strings["You may visit their profile at %s"] = "Hier kannst du das Profil betrachten: %s";
$a->strings["Please visit %s to approve or reject the introduction."] = "Bitte besuche %s, um die Kontaktanfrage anzunehmen oder abzulehnen.";
$a->strings["Friend suggestion received at %s"] = "Kontaktvorschlag empfangen auf %s";
$a->strings["You've received a friend suggestion from '%s' at %s"] = "Du hast von '%s' einen Kontaktvorschlag erhalten auf %s";
+$a->strings["You've received %s for %s from %s."] = "Du hast %s für %s von %s erhalten.";
+$a->strings["a friend suggestion"] = "ein Freunde Vorschlag";
$a->strings["Name:"] = "Name:";
$a->strings["Photo:"] = "Foto:";
$a->strings["Please visit %s to approve or reject the suggestion."] = "Bitte besuche %s, um den Vorschlag zu akzeptieren oder abzulehnen.";
diff --git a/view/email_notify_html.tpl b/view/email_notify_html.tpl
index b302c2149..43f72f15c 100755
--- a/view/email_notify_html.tpl
+++ b/view/email_notify_html.tpl
@@ -18,7 +18,7 @@
<tr><td style="font-weight:bold;padding-bottom:5px;">$title</td></tr>
<tr><td style="padding-right:22px;">$htmlversion</td></tr>
<tr><td style="padding-top:11px;" colspan="2">$hsitelink</td></tr>
- <tr><td style="padding-bottom:11px;" colspan="2">$itemlink</td></tr>
+ <tr><td style="padding-bottom:11px;" colspan="2">$hitemlink</td></tr>
<tr><td></td><td>$thanks</td></tr>
<tr><td></td><td>$site_admin</td></tr>
</tbody>
diff --git a/view/email_notify_text.tpl b/view/email_notify_text.tpl
index f7f5a4c68..018bb6078 100755
--- a/view/email_notify_text.tpl
+++ b/view/email_notify_text.tpl
@@ -6,7 +6,7 @@ $title
$textversion
$tsitelink
-$itemlink
+$titemlink
$thanks
$site_admin
diff --git a/view/head.tpl b/view/head.tpl
index 2a1837088..f606f2f7e 100755
--- a/view/head.tpl
+++ b/view/head.tpl
@@ -11,10 +11,10 @@
<link rel="search"
href="$baseurl/opensearch"
type="application/opensearchdescription+xml"
- title="Search in Friendika" />
+ title="Search in Friendica" />
<!--[if IE]>
-<script type="text/javascript" src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
+<script type="text/javascript" src="https://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<script type="text/javascript" src="$baseurl/js/jquery.js" ></script>
<script type="text/javascript" src="$baseurl/js/jquery.textinputs.js" ></script>
diff --git a/view/jot-header.tpl b/view/jot-header.tpl
index 007f639b6..d6b172b6a 100755
--- a/view/jot-header.tpl
+++ b/view/jot-header.tpl
@@ -15,7 +15,7 @@ function initEditor(cb){
$("a#jot-perms-icon").fancybox({
'transitionIn' : 'elastic',
'transitionOut' : 'elastic'
- });
+ });
$(".jothidden").show();
if (typeof cb!="undefined") cb();
return;
@@ -129,7 +129,6 @@ function enableOnUser(){
$("#profile-jot-text").focus(enableOnUser);
$("#profile-jot-text").click(enableOnUser);
-
var uploader = new window.AjaxUpload(
'wall-image-upload',
{ action: 'wall_upload/$nickname',
diff --git a/view/notifications.tpl b/view/notifications.tpl
index 487f8b480..1a13b68b9 100755
--- a/view/notifications.tpl
+++ b/view/notifications.tpl
@@ -1,5 +1,5 @@
-<h1>Notifications</h1>
+<h1>$notif_header</h1>
{{ inc common_tabs.tpl }}{{ endinc }}
diff --git a/view/settings_connectors.tpl b/view/settings_connectors.tpl
index 0f3357873..9493c8bf7 100755
--- a/view/settings_connectors.tpl
+++ b/view/settings_connectors.tpl
@@ -23,6 +23,8 @@ $settings_connectors
{{inc field_password.tpl with $field=$mail_pass }}{{endinc}}
{{inc field_input.tpl with $field=$mail_replyto }}{{endinc}}
{{inc field_checkbox.tpl with $field=$mail_pubmail }}{{endinc}}
+ {{inc field_select.tpl with $field=$mail_action }}{{endinc}}
+ {{inc field_input.tpl with $field=$mail_movetofolder }}{{endinc}}
<div class="settings-submit-wrapper" >
<input type="submit" id="imap-submit" name="imap-submit" class="settings-submit" value="$submit" />
diff --git a/view/theme/clean/unsupported b/view/theme/clean/unsupported
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/view/theme/clean/unsupported
diff --git a/view/theme/darkness/unsupported b/view/theme/darkness/unsupported
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/view/theme/darkness/unsupported
diff --git a/view/theme/darkzero-NS/border.jpg b/view/theme/darkzero-NS/border.jpg
new file mode 100755
index 000000000..4967412bf
--- /dev/null
+++ b/view/theme/darkzero-NS/border.jpg
Binary files differ
diff --git a/view/theme/darkzero-NS/head.jpg b/view/theme/darkzero-NS/head.jpg
new file mode 100755
index 000000000..67e852140
--- /dev/null
+++ b/view/theme/darkzero-NS/head.jpg
Binary files differ
diff --git a/view/theme/darkzero-NS/sectionend.jpg b/view/theme/darkzero-NS/sectionend.jpg
new file mode 100755
index 000000000..9d5d5c8f3
--- /dev/null
+++ b/view/theme/darkzero-NS/sectionend.jpg
Binary files differ
diff --git a/view/theme/darkzero-NS/shiny.png b/view/theme/darkzero-NS/shiny.png
new file mode 100755
index 000000000..994c0d05d
--- /dev/null
+++ b/view/theme/darkzero-NS/shiny.png
Binary files differ
diff --git a/view/theme/darkzero-NS/style.css b/view/theme/darkzero-NS/style.css
new file mode 100755
index 000000000..047381a92
--- /dev/null
+++ b/view/theme/darkzero-NS/style.css
@@ -0,0 +1,99 @@
+@import url('../duepuntozero/style.css');
+
+/* dark variation Fabio Comuni <fabrix.xm@gmail.com> */
+
+a:link, a:visited { color: #99CCFF; text-decoration: none; }
+a:hover {text-decoration: underline; }
+
+input, select, textarea {
+ background-color: #222222;
+ color: #FFFFFF !important;
+ border: 1px solid #444444;
+}
+.openid { background-color: #222222;}
+
+body { background-color: #222222; color: #cccccc; background-image: url(head.jpg); }
+aside{ background-image: url(border.jpg); padding-bottom: 0px; }
+section { background-color: #333333; background-image: url(border.jpg); }
+
+
+.tabs { background-image: url(head.jpg); }
+div.wall-item-content-wrapper.shiny { background-image: url('shiny.png'); }
+
+nav #banner #logo-text a { color: #ffffff; }
+
+.wall-item-content-wrapper { border: 1px solid #444444; }
+.wall-item-tools { background-color: #444444; background-image: none;}
+.comment-edit-wrapper{ background-color: #333333; }
+.wall-item-content-wrapper.comment { background-color: #444444; border: 0px;}
+.photo-top-album-name{ background-color: #333333; }
+.photo-album-image-wrapper .caption { background-color: rgba(51, 51, 51, 0.8); color: #FFFFFF; }
+
+.nav-selected.nav-link { color: #ffffff!important; border-bottom: 0px}
+.nav-commlink, .nav-login-link {background-color: #b7bab3;}
+.nav-commlink:link, .nav-commlink:visited,
+.nav-login-link:link, .nav-login-link:visited{
+ color: #ffffff;
+}
+
+.fakelink, .fakelink:visited {
+ color: #99CCFF;
+}
+
+.wall-item-name-link {
+ color: #99CCFF;
+}
+
+.wall-item-photo-menu li a {
+ color: #CCCCCC; background-color: #333333;
+}
+
+.wall-item-photo-menu li a:hover {
+ background-color: #CCCCCC; color: #333333;
+}
+#page-footer { min-height: 1em;}
+footer {
+ margin: 0px 10%;
+ display: block;
+ background-image: url('sectionend.jpg');
+ background-position: top left;
+ background-repeat: repeat-x;
+ height: 25px;
+}
+
+
+input#dfrn-url {
+ background-color: #222222;
+ color: #FFFFFF !important;
+}
+.pager_first a, .pager_last a, .pager_prev a, .pager_next a, .pager_n a, .pager_current {
+ color: #000088;
+}
+
+#jot-perms-icon {
+ float: left;
+}
+
+
+#jot-title {
+ background-color: #333333;
+ border: 1px solid #333333;
+}
+
+#jot-title::-webkit-input-placeholder{ color: #555555!important;}
+#jot-title:-moz-placeholder{color: #555555!important;}
+
+
+#jot-title:hover,
+#jot-title:focus {
+ border: 1px solid #cccccc;
+}
+
+.wall-item-content {
+ max-height: 20000px;
+ overflow: none;
+}
+blockquote {
+ background: #ddd;
+ color: #000;
+}
diff --git a/view/theme/darkzero-NS/theme.php b/view/theme/darkzero-NS/theme.php
new file mode 100755
index 000000000..521b1859e
--- /dev/null
+++ b/view/theme/darkzero-NS/theme.php
@@ -0,0 +1,57 @@
+<?php
+
+/*
+ * Name: Darkzero-NS
+ * Description: Darkzero theme with posts that do not scroll
+ * Version: 1.0
+ * Author: Mike Macgirvin <mike@macgirvin.com>
+ */
+
+$a->theme_info = array(
+ 'extends' => 'duepuntozero',
+);
+
+$a->page['htmlhead'] .= <<< EOT
+<script>
+$(document).ready(function() {
+
+$('.group-edit-icon').hover(
+ function() {
+ $(this).addClass('icon'); $(this).removeClass('iconspacer');},
+ function() {
+ $(this).removeClass('icon'); $(this).addClass('iconspacer');}
+ );
+
+$('.sidebar-group-element').hover(
+ function() {
+ id = $(this).attr('id');
+ $('#edit-' + id).addClass('icon'); $('#edit-' + id).removeClass('iconspacer');},
+
+ function() {
+ id = $(this).attr('id');
+ $('#edit-' + id).removeClass('icon');$('#edit-' + id).addClass('iconspacer');}
+ );
+
+
+$('.savedsearchdrop').hover(
+ function() {
+ $(this).addClass('drop'); $(this).addClass('icon'); $(this).removeClass('iconspacer');},
+ function() {
+ $(this).removeClass('drop'); $(this).removeClass('icon'); $(this).addClass('iconspacer');}
+ );
+
+$('.savedsearchterm').hover(
+ function() {
+ id = $(this).attr('id');
+ $('#drop-' + id).addClass('icon'); $('#drop-' + id).addClass('drophide'); $('#drop-' + id).removeClass('iconspacer');},
+
+ function() {
+ id = $(this).attr('id');
+ $('#drop-' + id).removeClass('icon');$('#drop-' + id).removeClass('drophide'); $('#drop-' + id).addClass('iconspacer');}
+ );
+
+});
+
+
+</script>
+EOT;
diff --git a/view/theme/darkzero-NS/unsupported b/view/theme/darkzero-NS/unsupported
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/view/theme/darkzero-NS/unsupported
diff --git a/view/theme/darkzero/style.css b/view/theme/darkzero/style.css
index 25ae0c71f..fdaf26f19 100755
--- a/view/theme/darkzero/style.css
+++ b/view/theme/darkzero/style.css
@@ -88,3 +88,7 @@ input#dfrn-url {
#jot-title:focus {
border: 1px solid #cccccc;
}
+blockquote {
+ background: #ddd;
+ color: #000;
+}
diff --git a/view/theme/darkzero/theme.php b/view/theme/darkzero/theme.php
index 5d63583f4..37632c4b5 100755
--- a/view/theme/darkzero/theme.php
+++ b/view/theme/darkzero/theme.php
@@ -1,4 +1,11 @@
<?php
+
+/*
+ * Name: Darkzero
+ * Version: 1.0
+ * Author: Fabio Communi <fabrix.xm@gmail.com>
+ */
+
$a->theme_info = array(
'extends' => 'duepuntozero',
);
diff --git a/view/theme/dispy/premium.png b/view/theme/dispy/premium.png
new file mode 100755
index 000000000..1ad601c0f
--- /dev/null
+++ b/view/theme/dispy/premium.png
Binary files differ
diff --git a/view/theme/dispy/star.png b/view/theme/dispy/star.png
new file mode 100755
index 000000000..a327ba14e
--- /dev/null
+++ b/view/theme/dispy/star.png
Binary files differ
diff --git a/view/theme/dispy/style.css b/view/theme/dispy/style.css
index 5bc1450db..7f563293a 100755
--- a/view/theme/dispy/style.css
+++ b/view/theme/dispy/style.css
@@ -1099,6 +1099,21 @@ div[id$="wrapper"] br { clear: left; }
border-bottom: 0px;
}*/
+.starred {
+ background-image: url("star.png");
+ repeat: no-repeat;
+}
+.unstarred {
+ background-image: url("premium.png");
+ repeat: no-repeat;
+}
+
+.tagged {
+ background-image: url("tag.png");
+ repeat: no-repeat;
+}
+
+
.border {
border: 1px solid #babdb6;
diff --git a/view/theme/dispy/tag.png b/view/theme/dispy/tag.png
new file mode 100644
index 000000000..aca10707a
--- /dev/null
+++ b/view/theme/dispy/tag.png
Binary files differ
diff --git a/view/theme/dispy/wall_item.tpl b/view/theme/dispy/wall_item.tpl
index 9c3703f5f..882843a09 100755
--- a/view/theme/dispy/wall_item.tpl
+++ b/view/theme/dispy/wall_item.tpl
@@ -24,6 +24,7 @@
<div class="wall-item-tools" id="wall-item-tools-$id">
{{ if $star }}
<a href="#" id="starred-$id" onclick="dostar($id); return false;" class="star-item icon $isstarred" title="$star.toggle"></a>
+ <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="tag-item icon tagged" title="$star.tagger"></a>
{{ endif }}
{{ if $vote }}
<div class="wall-item-like-buttons" id="wall-item-like-buttons-$id">
diff --git a/view/theme/dispy/wallwall_item.tpl b/view/theme/dispy/wallwall_item.tpl
index 95c68220a..57c6600b7 100755
--- a/view/theme/dispy/wallwall_item.tpl
+++ b/view/theme/dispy/wallwall_item.tpl
@@ -29,6 +29,7 @@
<div class="wall-item-tools" id="wall-item-tools-$id">
{{ if $star }}
<a href="#" id="starred-$id" onclick="dostar($id); return false;" class="star-item icon $isstarred" title="$star.toggle"></a>
+ <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="tag-item icon tagged" title="$star.tagger"></a>
{{ endif }}
{{ if $vote }}
<div class="wall-item-like-buttons" id="wall-item-like-buttons-$id">
diff --git a/view/theme/duepuntozero/nav.tpl b/view/theme/duepuntozero/nav.tpl
index afa918065..4675c3e5c 100755
--- a/view/theme/duepuntozero/nav.tpl
+++ b/view/theme/duepuntozero/nav.tpl
@@ -39,8 +39,21 @@
<span id="mail-update" class="nav-ajax-left"></span>
{{ endif }}
+
+
{{ if $nav.manage }}<a id="nav-manage-link" class="nav-commlink $nav.manage.2 $sel.manage" href="$nav.manage.0" title="$nav.manage.3">$nav.manage.1</a>{{ endif }}
+
+ {{ if $nav.notifications }}
+ <a id="nav-notifications-linkmenu" class="nav-commlink" href="$nav.notifications.0" rel="#nav-notifications-menu" title="$nav.notifications.1">$nav.notifications.1</a>
+ <span id="notify-update" class="nav-ajax-left"></span>
+ <ul id="nav-notifications-menu" class="menu-popup">
+ <li id="nav-notifications-see-all"><a href="$nav.notifications.all.0">$nav.notifications.all.1</a></li>
+ <li id="nav-notifications-mark-all"><a href="#" onclick="notifyMarkAll(); return false;">$nav.notifications.mark.1</a></li>
+ <li class="empty">$emptynotifications</li>
+ </ul>
+ {{ endif }}
+
{{ if $nav.settings }}<a id="nav-settings-link" class="nav-link $nav.settings.2" href="$nav.settings.0" title="$nav.settings.3">$nav.settings.1</a>{{ endif }}
{{ if $nav.profiles }}<a id="nav-profiles-link" class="nav-link $nav.profiles.2" href="$nav.profiles.0" title="$nav.profiles.3" >$nav.profiles.1</a>{{ endif }}
@@ -49,3 +62,7 @@
<span id="nav-end"></span>
<span id="banner">$banner</span>
</nav>
+
+<ul id="nav-notifications-template" style="display:none;" rel="template">
+ <li class="{4}"><a href="{0}"><img src="{1}" height="24" width="24" alt="" />{2} <span class="notif-when">{3}</span></a></li>
+</ul>
diff --git a/view/theme/duepuntozero/style.css b/view/theme/duepuntozero/style.css
index cf7505ad0..938fbe471 100755
--- a/view/theme/duepuntozero/style.css
+++ b/view/theme/duepuntozero/style.css
@@ -2967,3 +2967,73 @@ div.jGrowl div.info {
opacity: 1.0;
filter:alpha(opacity=100);
}
+
+/* notifications popup menu */
+.nav-notify {
+ display: none;
+ position: absolute;
+ font-size: 10px;
+ padding: 1px 3px;
+ top: 0px;
+ right: -10px;
+ min-width: 15px;
+ text-align: right;
+}
+.nav-notify.show {
+ display: block;
+}
+ul.menu-popup {
+ position: absolute;
+ display: none;
+ width: 10em;
+ margin: 0px;
+ padding: 0px;
+ list-style: none;
+ z-index: 100000;
+ top: 90px;
+ left: 400px;
+}
+#nav-notifications-menu {
+ width: 320px;
+ max-height: 400px;
+ overflow-y: scroll;overflow-style:scrollbar;
+ background-color:#FFFFFF;
+ -moz-border-radius: 5px;
+ -webkit-border-radius: 5px;
+ border-radius:5px;
+ border: 1px solid #888;
+}
+#nav-notifications-menu .contactname { font-weight: bold; font-size: 0.9em; }
+#nav-notifications-menu img { float: left; margin-right: 5px; }
+#nav-notifications-menu .notif-when { font-size: 0.8em; display: block; }
+#nav-notifications-menu li {
+ padding: 7px 0px 7px 10px;
+ word-wrap:normal;
+ border-bottom: 1px solid #000;
+}
+
+#nav-notifications-menu li:hover {
+
+}
+
+#nav-notifications-menu a:hover {
+ text-decoration: underline;
+}
+
+.notif-item a {
+ color: #000000;
+}
+
+.notif-item a:hover {
+ text-decoration: underline;
+}
+
+.notif-image {
+ width: 32px;
+ height: 32px;
+ padding: 7px 7px 0px 0px;
+}
+
+.notify-seen {
+ background: #DDDDDD;
+} \ No newline at end of file
diff --git a/view/theme/duepuntozero/wallwall_item.tpl b/view/theme/duepuntozero/wallwall_item.tpl
index ea9a218b4..4675f1e00 100755
--- a/view/theme/duepuntozero/wallwall_item.tpl
+++ b/view/theme/duepuntozero/wallwall_item.tpl
@@ -59,6 +59,7 @@
{{ if $star }}
<a href="#" id="starred-$id" onclick="dostar($id); return false;" class="star-item icon $isstarred" title="$star.toggle"></a>
+ <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="tag-item icon tagged" title="$star.tagger"></a>
{{ endif }}
<div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$id" >
diff --git a/view/theme/easterbunny/unsupported b/view/theme/easterbunny/unsupported
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/view/theme/easterbunny/unsupported
diff --git a/view/theme/ghost/unsupported b/view/theme/ghost/unsupported
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/view/theme/ghost/unsupported
diff --git a/view/theme/goldenrod/unsupported b/view/theme/goldenrod/unsupported
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/view/theme/goldenrod/unsupported
diff --git a/view/theme/loozah/unsupported b/view/theme/loozah/unsupported
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/view/theme/loozah/unsupported
diff --git a/view/theme/loozah/wall_item.tpl b/view/theme/loozah/wall_item.tpl
index 727e3d1c2..56c8a82e2 100755
--- a/view/theme/loozah/wall_item.tpl
+++ b/view/theme/loozah/wall_item.tpl
@@ -49,6 +49,8 @@
{{ if $star }}
<a href="#" id="starred-$id" onclick="dostar($id); return false;" class="star-item icon $isstarred" title="$star.toggle"></a>
+ <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="tag-item icon tagged" title="$star.tagger"></a>
+
{{ endif }}
<div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$id" >
diff --git a/view/theme/loozah/wallwall_item.tpl b/view/theme/loozah/wallwall_item.tpl
index 09de86c7b..0e4c1a6cf 100755
--- a/view/theme/loozah/wallwall_item.tpl
+++ b/view/theme/loozah/wallwall_item.tpl
@@ -53,6 +53,7 @@
{{ if $star }}
<a href="#" id="starred-$id" onclick="dostar($id); return false;" class="star-item icon $isstarred" title="$star.toggle"></a>
+ <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="tag-item icon tagged" title="$star.tagger"></a>
{{ endif }}
<div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$id" >
diff --git a/view/theme/shady/unsupported b/view/theme/shady/unsupported
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/view/theme/shady/unsupported
diff --git a/view/theme/vier/colors.less b/view/theme/vier/colors.less
index 5314b5284..18d0fc620 100644
--- a/view/theme/vier/colors.less
+++ b/view/theme/vier/colors.less
@@ -1,6 +1,7 @@
// Quattro Theme LESS file
// "Echo" palette from Inkscape
+@Yellow1 : #fce94f;
@Blue1:rgb(25,174,255);
@Blue2:rgb(0,132,200);
@Blue3:rgb(0,92,148);
@@ -71,6 +72,7 @@
@NoticeBackgroundColor: #511919;
@ThreadBackgroundColor: #f6f7f8;
+@ShinyBorderColor: @Yellow1;
@CommentBoxEmptyColor: @Grey3;
@CommentBoxEmptyBorderColor: @Grey3;
@@ -91,4 +93,4 @@
@JotPermissionUnlockBackgroundColor: @Grey2;
@JotPermissionLockBackgroundColor: @Grey4;
@JotLoadingBackgroundColor: @Grey1;
-
+@JotPreviewBackgroundColor: @Yellow1;
diff --git a/view/theme/vier/icons.less b/view/theme/vier/icons.less
index f87327703..e314fba1f 100644
--- a/view/theme/vier/icons.less
+++ b/view/theme/vier/icons.less
@@ -13,6 +13,11 @@
&.link { background-image: url("../../../images/icons/@{size}/link.png"); }
&.lock { background-image: url("../../../images/icons/@{size}/lock.png"); }
&.unlock { background-image: url("../../../images/icons/@{size}/unlock.png"); }
+ &.type-unkn { background-image: url("../../../images/icons/@{size}/zip.png"); }
+ &.type-audio{ background-image: url("../../../images/icons/@{size}/audio.png"); }
+ &.type-video{ background-image: url("../../../images/icons/@{size}/video.png"); }
+ &.type-image{ background-image: url("../../../images/icons/@{size}/image.png"); }
+ &.type-text { background-image: url("../../../images/icons/@{size}/text.png"); }
}
diff --git a/view/theme/vier/quattro.less b/view/theme/vier/quattro.less
index 671577303..9d2608261 100644
--- a/view/theme/vier/quattro.less
+++ b/view/theme/vier/quattro.less
@@ -3,7 +3,7 @@
/* global */
body {
font-family: Liberation Sans,helvetica,arial,clean,sans-serif;
- font-size: 10px;
+ font-size: 11px;
background-color: @BodyBackground;
color: @BodyColor;
margin: 50px 0px 0px 0px;
@@ -44,6 +44,9 @@ a:hover {color: @LinkHover; text-decoration: underline; }
.hidden { display: none; }
.clear { clear: both; }
+.fakelink { color: @Link; text-decoration: none; cursor:pointer; }
+.fakelink:hover { color: @LinkHover; text-decoration: underline; }
+
code {
font-family: Courier, monospace;
white-space: pre;
@@ -55,6 +58,23 @@ code {
padding: 10px;
margin-top: 20px;
}
+
+#panel {
+ position: absolute;
+ width: 10em;
+ background: @MenuBg;
+ color: @Menu;
+ margin: 0px;
+ padding: 1em;
+ list-style: none;
+ border: 3px solid @MenuBorder;
+ z-index: 100000;
+
+ .shadow();
+}
+
+
+
/* tool */
.tool {
@@ -234,7 +254,8 @@ ul.menu-popup {
#nav-notifications-menu {
- width: 400px;
+ width: 400px; max-height: 550px;
+ overflow: auto;
img { float: left; margin-right: 5px; }
.contactname { font-weight: bold; }
.notif-when { font-size: 10px; color: @MenuItemDetail; display: block; }
@@ -288,16 +309,99 @@ aside {
.allcontact-link { float: right; margin: 5px 0px; }
.contact-block-content {
clear: both;
- overflow: auto; height: auto;
+ overflow: hidden;
+ height: auto;
}
+ /*.contact-block-div { width:60px; height: 60px; }*/
.contact-block-link {
float: left;
margin: 0px 2px 2px 0px;
- img { widht: 48px; height: 58px; }
+ img { width: 48px; height: 48px; }
}
}
+/* mail view */
+.mail-conv-sender,
+.mail-conv-detail {
+ float: left;
+}
+.mail-conv-detail {
+ margin-left: 20px;
+ width: 500px;
+}
+
+.mail-conv-subject {
+ font-size: 1.4em;
+ margin: 10px 0;
+}
+
+.mail-conv-outside-wrapper-end {
+ clear: both;
+}
+
+.mail-conv-outside-wrapper {
+ margin-top: 30px;
+}
+
+.mail-conv-delete-wrapper {
+ float: right;
+ margin-right: 30px;
+ margin-top: 15px;
+}
+.mail-conv-break {
+ clear: both;
+}
+.mail-conv-delete-icon {
+ border: none;
+}
+/* group member */
+#contact-edit-drop-link,
+.mail-list-delete-wrapper,
+.group-delete-wrapper {
+ float: right;
+ margin-right: 50px;
+ .drophide {
+ background-image: url('../../../images/icons/22/delete.png');
+ display: block; width: 22px; height: 22px;
+ opacity: 0.3;
+ position: relative;
+ top: -50px;
+ }
+ .drop {
+ background-image: url('../../../images/icons/22/delete.png');
+ display: block; width: 22px; height: 22px;
+ position: relative;
+ top: -50px;
+ }
+}
+/*
+#group-members {
+ margin-top: 20px;
+ padding: 10px;
+ height: 250px;
+ overflow: auto;
+ border: 1px solid #ddd;
+}
+#group-members-end {
+ clear: both;
+}
+#group-all-contacts {
+ padding: 10px;
+ height: 450px;
+ overflow: auto;
+ border: 1px solid #ddd;
+}
+#group-all-contacts-end {
+ clear: both;
+ margin-bottom: 10px;
+}
+.contact-block-div {
+ float: left;
+ width: 60px;
+ height: 60px;
+}*/
+
/* widget */
.widget {
margin-bottom: 2em;
@@ -431,6 +535,28 @@ section {
}
}
+.comment-edit-preview {
+ width: 710px;
+ border: 1px solid @Grey5;
+ margin-top: 10px;
+
+ .contact-photo { width: 32px; height: 32px; margin-left: 16px;
+ /*background: url(../../../images/icons/22/user.png) no-repeat center center;*/
+ }
+ .contact-photo-menu-button {
+ top: 15px !important;
+ left: 15px !important;
+ }
+ .wall-item-links { padding-left: 12px; }
+
+ .wall-item-container { width: 700px; }
+ .tread-wrapper { width: 700px; padding: 0; margin: 10px 0;}
+
+
+}
+
+.shiny { border-right:10px solid @ShinyBorderColor; }
+#jot-preview-content .tread-wrapper { background-color: @JotPreviewBackgroundColor; }
.wall-item-tags { padding-top: 5px; }
@@ -445,7 +571,31 @@ section {
}
}
-/* contacts menu */
+.wwto {
+ position: absolute !important;
+ width: 25px; height: 25px;
+ background: #FFFFFF;
+ border: 2px solid @Metalic3;
+ height: 25px;
+ width: 25px;
+ overflow: hidden;
+ padding: 1px;
+ position: absolute !important;
+ top: 40px;
+ left: 30px;
+
+ .shadow(0px, 0px)
+}
+.wwto .contact-photo { width: 25px; height: 25px; }
+
+
+#pause {
+ position: fixed;
+ bottom: 5px;
+ right: 5px;
+}
+
+
.contact-photo-wrapper { position: relative; }
.contact-photo {
width: 48px; height: 48px;
@@ -462,8 +612,14 @@ section {
.contact-wrapper {
float: left;
- width: 90px;
+ width: 300px;
height: 90px;
+ padding-right: 10px;
+ margin: 0 10px 10px 0px;
+ .contact-photo-wrapper {
+ float: left;
+ margin-right: 10px;
+ }
.contact-photo {
width: 80px; height: 80px;
img { width: 80px; height: 80px; }
@@ -482,8 +638,12 @@ section {
img { width: 175px; height: 175px; }
}
}
-.contact-name { text-align: center; font-weight: bold; }
-.contact-details { color: @Grey3;}
+.contact-name { font-weight: bold; padding-top: 15px; }
+.contact-details {
+ color: @Grey3; white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis;
+}
/* editor */
.jothidden { display: none; }
@@ -794,6 +954,58 @@ ul.tabs {
#profile-edit-links li {
list-style: none;
+ margin-top: 10px;
+}
+
+#profile-edit-default-desc {
+ color: #FF0000;
+ border: 1px solid #FF8888;
+ background-color: #FFEEEE;
+ padding: 7px;
+}
+#profile-edit-profile-name-label,
+#profile-edit-name-label,
+#profile-edit-pdesc-label,
+#profile-edit-gender-label,
+#profile-edit-dob-label,
+#profile-edit-address-label,
+#profile-edit-locality-label,
+#profile-edit-region-label,
+#profile-edit-postal-code-label,
+#profile-edit-country-name-label,
+#profile-edit-marital-label,
+#profile-edit-with-label,
+#profile-edit-sexual-label,
+#profile-edit-politic-label,
+#profile-edit-religion-label,
+#profile-edit-pubkeywords-label,
+#profile-edit-prvkeywords-label,
+#profile-edit-gender-select,
+#profile-edit-homepage-label {
+ float: left;
+ width: 175px;
+ padding-top: 7px;
+}
+#profile-edit-profile-name,
+#profile-edit-name,
+#gender-select,
+#profile-edit-pdesc,
+#profile-edit-gender,
+#profile-edit-dob,
+#profile-edit-address,
+#profile-edit-locality,
+#profile-edit-region,
+#profile-edit-postal-code,
+#profile-edit-country-name,
+#profile-edit-marital,
+#profile-edit-with,
+#profile-edit-sexual,
+#profile-edit-politic,
+#profile-edit-religion,
+#profile-edit-pubkeywords,
+#profile-edit-prvkeywords,
+#profile-edit-homepage {
+ margin-top: 5px;
}
/* oauth */
@@ -828,6 +1040,28 @@ ul.tabs {
margin: 0px 10px 10px 0px;
}
+/* profile match wrapper */
+.profile-match-wrapper {
+ float: left;
+ width: 90px;
+ height: 90px;
+ margin-bottom: 20px;
+ .contact-photo {
+ width: 80px; height: 80px;
+ img { width: 80px; height: 80px; }
+ }
+ .contact-photo-menu-button {
+ left: 0px;
+ top: 63px;
+ }
+}
+
/* page footer */
footer { height: 100px; display: table-row; }
+
+.pager {
+ margin-top: 25px;
+ clear: both;
+}
+
diff --git a/view/theme/vier/search_item.tpl b/view/theme/vier/search_item.tpl
index 9cd3c8e2e..372e0d034 100755
--- a/view/theme/vier/search_item.tpl
+++ b/view/theme/vier/search_item.tpl
@@ -1,7 +1,7 @@
<div class="wall-item-decor">
- <span class="icon s22 star $isstarred" id="starred-$id" title="$star.starred">$star.starred</span>
- {{ if $lock }}<span class="icon s22 lock fakelink" onclick="lockview(event,$id);" title="$lock">$lock</span>{{ endif }}
+ <span class="icon star $isstarred" id="starred-$id" title="$star.starred">$star.starred</span>
+ {{ if $lock }}<span class="icon lock fakelink" onclick="lockview(event,$id);" title="$lock">$lock</span>{{ endif }}
<img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
</div>
@@ -25,6 +25,7 @@
<a href="$profile_url" target="redir" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle">$name</span></a>
<span class="wall-item-ago">- &nbsp;
{{ if $plink }}<a class="link" title="$plink.title" href="$plink.href" style="color: #999">$ago</a>{{ else }} $ago {{ endif }}
+ {{ if $lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$id);">$lock</span> {{ endif }}
</span>
</div>
<div class="wall-item-content">
diff --git a/view/theme/vier/style.css b/view/theme/vier/style.css
index 89dd98146..39f4ffea4 100644
--- a/view/theme/vier/style.css
+++ b/view/theme/vier/style.css
@@ -334,11 +334,15 @@ h4 {
font-size: 1.1em;
}
-a {color: #3e3e8c;
-text-decoration: none;
+a {
+ color: #36C;
+ /* color: #3e3e8c; */
+ text-decoration: none;
+}
+a:hover {
+ /* color: blue; */
+ text-decoration: underline
}
-a:hover {color: blue;
-text-decoration: underline}
.wall-item-name-link {
/* float: left;*/
@@ -364,12 +368,13 @@ text-decoration: underline}
clear: both;
}
.fakelink {
- color: #3e3e8c;
+ color: #36c;
+ /* color: #3e3e8c; */
text-decoration: none;
cursor: pointer;
}
.fakelink:hover {
- color: blue;
+ /* color: blue; */
/*color: #005c94; */
text-decoration: underline;
}
@@ -402,6 +407,12 @@ code {
.tool {
height: auto;
overflow: auto;
+ padding: 3px;
+}
+#saved-search-ul .tool:hover,
+#nets-sidebar .tool:hover,
+#sidebar-group-list .tool:hover {
+ background: #EEE;
}
.tool .label {
float: left;
@@ -409,6 +420,12 @@ code {
.tool .action {
float: right;
}
+.tool a {
+ color: #000;
+}
+.tool a:hover {
+ text-decoration: none;
+}
/* popup notifications */
div.jGrowl div.notice {
background: #511919 url("../../../images/icons/48/notice.png") no-repeat 5px center;
@@ -496,7 +513,7 @@ nav ul {
nav ul li {
list-style: none;
margin: 0px;
- padding: 0px;
+ /* padding: 1px 1px 3px 1px; */
float: left;
}
nav ul li .menu-popup {
@@ -536,7 +553,8 @@ nav .nav-menu.selected {
nav .nav-notify {
display: none;
position: absolute;
- background-color: #19aeff;
+ background-color: #36c;
+ /* background-color: #19aeff; */
-moz-border-radius: 5px 5px 5px 5px;
-webkit-border-radius: 5px 5px 5px 5px;
border-radius: 5px 5px 5px 5px;
@@ -571,10 +589,25 @@ nav #nav-notifications-linkmenu.on .icon.s22.notify, nav #nav-notifications-link
nav #nav-apps-link.selected {
background-color: #364e59;
}
+
+#nav-notifications-mark-all {
+ /* padding: 1px 1px 2px 26px; */
+ /* border-bottom: 1px solid #364E59; */
+ /* margin: 0px 0px 2px 0px;
+ padding: 5px 10px; */
+}
+
+#nav-notifications-see-all {
+ /* padding: 1px 1px 2px 26px; */
+ /* border-bottom: 1px solid #364E59; */
+ /* margin: 0px 0px 2px 0px;
+ padding: 5px 10px; */
+}
+
ul.menu-popup {
position: absolute;
display: none;
- width: 10em;
+ width: 11em;
background: #ffffff;
color: #2d2d2d;
margin: 0px;
@@ -644,6 +677,15 @@ ul.menu-popup .empty {
max-height: 550px;
overflow: auto;
}
+/* #nav-notifications-menu a {
+ display: inline;
+ padding: 5px 0px;
+ margin: 0px 0px 2px 0px;
+}
+#nav-notifications-menu li:hover {
+ background-color: #bdcdd4;
+}*/
+
#nav-notifications-menu img {
float: left;
margin-right: 5px;
@@ -656,6 +698,13 @@ ul.menu-popup .empty {
color: #9eabb0;
display: block;
}
+
+.notif-image {
+ width: 32px;
+ height: 32px;
+ padding: 7px 7px 0px 0px;
+}
+
/* aside */
aside {
display: table-cell;
@@ -711,7 +760,8 @@ aside #dfrn-request-link {
}
aside #dfrn-request-link:hover {
text-decoration: none;
- background-color: #19aeff;
+ background-color: #36c;
+ /* background-color: #19aeff; */
}
aside #profiles-menu {
width: 20em;
@@ -813,7 +863,7 @@ section {
display: table-cell;
vertical-align: top;
width: 800px;
- padding: 0px 20px 0px 10px;
+ padding: 0px 0px 0px 10px;
}
/* wall item */
.tread-wrapper {
@@ -886,7 +936,7 @@ section {
}
.wall-item-container .wall-item-content img {
- max-width: 710px;
+ max-width: 700px;
}
.wall-item-container .wall-item-links, .wall-item-container .wall-item-actions {
display: table-cell;
@@ -946,7 +996,7 @@ section {
/*background: url(../../../images/icons/22/user.png) no-repeat center center;*/
}
-.wall-item-container.comment .contact-photo-menu-button {
+.wall-item-container.comment {
top: 15px !important;
left: 15px !important;
}
@@ -985,7 +1035,7 @@ section {
/*background: url(../../../images/icons/22/user.png) no-repeat center center;*/
}
-.comment-edit-preview .contact-photo-menu-button {
+.comment-edit-preview {
top: 15px !important;
left: 15px !important;
}
@@ -1000,6 +1050,16 @@ section {
padding: 0;
margin: 10px 0;
}
+
+.shiny {
+ /* border-right: 10px solid #fce94f; */
+ border-right: 1px solid #A7C7F7;
+ padding-right: 12px;
+}
+#jot-preview-content .tread-wrapper {
+ background-color: #fce94f;
+}
+
.wall-item-tags {
padding-top: 1px;
padding-bottom: 2px;
@@ -1056,12 +1116,7 @@ section {
width: 48px;
height: 48px;
}
-.contact-photo-menu-button {
- display: none;
- position: absolute;
- left: -2px;
- top: 31px;
-}
+
.contact-wrapper {
float: left;
width: 90px;
@@ -1076,26 +1131,21 @@ section {
width: 80px;
height: 80px;
}
-.contact-wrapper .contact-photo-menu-button {
+.contact-wrapper {
left: 0px;
top: 63px;
}
-.directory-item {
- float: left;
- width: 200px;
- height: 200px;
-}
-.directory-item .contact-photo {
- width: 175px;
- height: 175px;
+.contact-photo {
+ width: 48px;
+ height: 48px;
}
-.directory-item .contact-photo img {
- width: 175px;
- height: 175px;
+.contact-photo img {
+ width: 48px;
+ height: 48px;
}
.contact-name {
- text-align: center;
- font-weight: bold;
+ /* text-align: center; */
+ /*font-weight: bold;*/
font-size: 12px;
}
.contact-details {
@@ -1459,7 +1509,8 @@ ul.tabs li .active {
}
/* contacts */
.contact-entry-wrapper {
- width: 50px;
+ width: 120px;
+ height: 120px;
float: left;
}
/* photo */
@@ -1482,10 +1533,48 @@ ul.tabs li .active {
width: 80px;
height: 80px;
}
-.profile-match-wrapper .contact-photo-menu-button {
+.profile-match-wrapper {
left: 0px;
top: 63px;
}
+
+.contact-photo-menu-button {
+ position: relative;
+ background-image: url("../../../images/icons/16/menu.png");
+ background-position: top left;
+ background-repeat: no-repeat;
+ margin: 0px 0px -16px 0px;
+ padding: 0px;
+ width: 16px;
+ height: 16px;
+ top: -20px; left:0px;
+ overflow: hidden;
+ text-indent: 40px;
+ display: none;
+
+}
+.contact-photo-menu {
+ width: 11em;
+ border: 3px solid #364e59;
+ color: #2d2d2d;
+ background: #FFFFFF;
+/* position: absolute;*/
+ position: relative;
+ left: 0px; top: 0px;
+ display: none;
+ z-index: 10000;
+}
+.contact-photo-menu ul { margin:0px; padding: 0px; list-style: none }
+.contact-photo-menu li a {
+ display: block;
+ padding: 5px 10px;
+ color: #2d2d2d;
+ text-decoration: none;
+}
+.contact-photo-menu li a:hover {
+ background-color: #bdcdd4;
+}
+
/* page footer */
footer {
height: 100px;
@@ -1527,397 +1616,338 @@ blockquote {
#prof-separator { display: none;}
*/
-#prvmail-wrapper, .mail-conv-detail, .mail-list-detail {
- position: relative;
- width: 500px;
- padding: 50px;
- margin: 20px auto;
- background-color: #fff;
- -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.2), inset 0 0 50px rgba(0, 0, 0, 0.1);
- -moz-box-shadow: 0 0 4px rgba(0, 0, 0, 0.2), inset 0 0 50px rgba(0, 0, 0, 0.1);
- box-shadow: 0 0 5px rgba(0, 0, 0, 0.2), inset 0 0 50px rgba(0, 0, 0, 0.1);
-}
-
-#prvmail-wrapper:before, #prvmail-wrapper:after, .mail-conv-detail:before, .mail-conv-detail:after, .mail-list-detail:before, .mail-list-detail:after {
- position: absolute;
- width: 40%;
- height: 10px;
- content: ' ';
- left: 12px;
- bottom: 12px;
- background: transparent;
- -webkit-transform: skew(-5deg) rotate(-5deg);
- -moz-transform: skew(-5deg) rotate(-5deg);
- -ms-transform: skew(-5deg) rotate(-5deg);
- -o-transform: skew(-5deg) rotate(-5deg);
- transform: skew(-5deg) rotate(-5deg);
- -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
- -moz-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
- box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
- z-index: -1;
-}
-
-#prvmail-wrapper:after, .mail-conv-detail:after, .mail-list-detail:after {
- left: auto;
- right: 12px;
- -webkit-transform: skew(5deg) rotate(5deg);
- -moz-transform: skew(5deg) rotate(5deg);
- -ms-transform: skew(5deg) rotate(5deg);
- -o-transform: skew(5deg) rotate(5deg);
- transform: skew(5deg) rotate(5deg);
-}
-
-.prvmail-text {
- width: 100%;
+#prvmail-to-label, #prvmail-subject-label, #prvmail-message-label {
+ margin-bottom: 10px;
+ margin-top: 20px;
}
-.mail-list-outside-wrapper {
- margin-top: 20px;
+#prvmail-submit {
+ float: left;
+ margin-top: 10px;
+ margin-right: 30px;
+}
+#prvmail-upload-wrapper,
+#prvmail-link-wrapper,
+#prvmail-rotator-wrapper {
+ float: left;
+ margin-top: 10px;
+ margin-right: 10px;
+ width: 24px;
}
-.mail-list-sender {
- float: left;
- padding: 5px;
- background-color: #efefef;
- border: 2px dotted #eeeeee;
- -moz-box-shadow: 3px 3px 4px #959494;
- -webkit-box-shadow: 3px 3px 4px #959494;
- box-shadow: 3px 3px 4px #959494;
+#prvmail-end {
+ clear: both;
}
+.mail-list-sender,
.mail-list-detail {
- margin-left: 100px;
- width: 300px;
- min-height: 70px;
- padding: 20px;
- padding-top:10px;
- border: 1px solid #dddddd;
- }
-
-.mail-list-sender-name {
- font-size: 1.1em;
- display: inline;
- font-variant:small-caps;
+ float: left;
}
-
-.mail-list-date {
- float: right;
- clear: block;
- display: inline;
- font-size: 0.9em;
- padding-left: 10px;
- font-stretch:ultra-condensed;
- font-variant:small-caps;
+.mail-list-detail {
+ margin-left: 20px;
}
.mail-list-subject {
- clear: block;
- font-size: 1.2em;
- padding-top: 20px;
- padding-right: 50px;
+ font-size: 1.1em;
+ margin-top: 10px;
}
-
-.mail-list-subject a {
- color: #626262;
+a.mail-list-link {
+ display: block;
+ font-size: 1.3em;
+ padding: 4px 0;
}
-.mail-list-delete-wrapper { float: right;}
+/*
+*a.mail-list-link:hover {
+* background-color: #15607B;
+* color: #F5F6FB;
+*}
+*/
+
.mail-list-outside-wrapper-end {
- clear: both;
+ clear: both;
}
-.mail-conv-outside-wrapper {
- margin-bottom: 10px;
+.mail-list-outside-wrapper {
+ margin-top: 30px;
}
-.mail-conv-sender {float: left; margin: 0px 5px 5px 0px; }
-.mail-conv-sender-photo {
- width: 64px;
- height: 64px;
+.mail-list-delete-wrapper {
+ float: right;
+ margin-right: 30px;
+ margin-top: 15px;
}
-.mail-conv-sender-name { float: left; font-variant:small-caps; font-style: bold; }
-.mail-conv-date { float: right; font-variant:small-caps; }
-.mail-conv-subject { clear: right; font-weight: bold; font-size: 1.2em }
-.mail-conv-body {
- clear: both;
+.mail-list-delete-icon {
+ border: none;
}
+.mail-conv-sender,
.mail-conv-detail {
- width: 500px;
- padding: 30px;
- padding-bottom: 10px;
- margin-left: 20px;
- margin-bottom: 0px;
- vertical-align: middle;
- margin: auto;
- border: 1px solid #dddddd;
-}
-.mail-conv-break { display: none; border: none;}
-.mail-conv-delete-wrapper { padding-top: 10px; width: 510px; text-align: right; }
-
-/* ========== */
-/* = Events = */
-/* ========== */
-
-.clear { clear: both; }
-.eventcal {
float: left;
- font-size: 20px;
- padding: 20px;
+}
+.mail-conv-detail {
+ margin-left: 20px;
+ width: 500px;
}
-.vevent {
- position: relative;
- width: 400px;
- padding: 20px;
- padding-top: 10px;
- margin: 0 0px;
- margin-bottom: 10px;
- background-color: #fff;
- -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.2), inset 0 0 50px rgba(0, 0, 0, 0.1);
- -moz-box-shadow: 0 0 4px rgba(0, 0, 0, 0.2), inset 0 0 50px rgba(0, 0, 0, 0.1);
- box-shadow: 0 0 5px rgba(0, 0, 0, 0.2), inset 0 0 50px rgba(0, 0, 0, 0.1);
-}
-
-.vevent:before, .vevent:after {
- position: absolute;
- width: 40%;
- height: 10px;
- content: ' ';
- left: 12px;
- bottom: 12px;
- background: transparent;
- -webkit-transform: skew(-5deg) rotate(-5deg);
- -moz-transform: skew(-5deg) rotate(-5deg);
- -ms-transform: skew(-5deg) rotate(-5deg);
- -o-transform: skew(-5deg) rotate(-5deg);
- transform: skew(-5deg) rotate(-5deg);
- -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
- -moz-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
- box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
- z-index: -1;
-}
-
-.vevent:after {
- left: auto;
- right: 12px;
- -webkit-transform: skew(5deg) rotate(5deg);
- -moz-transform: skew(5deg) rotate(5deg);
- -ms-transform: skew(5deg) rotate(5deg);
- -o-transform: skew(5deg) rotate(5deg);
- transform: skew(5deg) rotate(5deg);
-}
-
-.vevent .event-description {
- margin-left: 10px;
- margin-right: 10px;
- text-align:center;
- font-size: 1.2em;
- font-weight:bolder;
+.mail-conv-subject {
+ font-size: 1.4em;
+ margin: 10px 0;
}
- .vevent .event-location{
- margin-left: 10px;
- margin-right: 10px;
- font-size: 1em;
- font-style: oblique;
- text-align: center;
-
+.mail-conv-outside-wrapper-end {
+ clear: both;
}
-.vevent .event-start, .vevent .event-end {
- margin-left: 20px;
- margin-right: 20px;
- margin-bottom: 2px;
- margin-top: 2px;
- font-size: 0.9em;
- font-variant: small-caps;
- text-align: left;
+.mail-conv-outside-wrapper {
+ margin-top: 30px;
}
-#new-event-link{
- width: 130px;
- padding: 7px;
- margin-bottom: 10px;
- margin-left: 170px; ;
- -moz-box-shadow:inset 0px 1px 0px 0px #cfcfcf;
- -webkit-box-shadow:inset 0px 1px 0px 0px #cfcfcf;
- box-shadow:inset 0px 1px 0px 0px #cfcfcf;
- background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #bdbdbd), color-stop(1, #a2a2a2) );
- background:-moz-linear-gradient( center top, #bdbdbd 5%, #a2a2a2 100% );
- filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#bdbdbd', endColorstr='#a2a2a2');
- background-color:#bdbdbd;
- -moz-border-radius:5px;
- -webkit-border-radius:5px;
- border-radius:5px;
- color: #efefef;
+.mail-conv-delete-wrapper {
+ float: right;
+ margin-right: 30px;
+ margin-top: 15px;
+}
+.mail-conv-break {
+ clear: both;
+}
+
+.mail-conv-delete-icon {
+ border: none;
}
-#new-event-link:hover {
- color: #efefef;
- background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #b20202), color-stop(1, #d60808) );
- background:-moz-linear-gradient( center top, #b20202 5%, #d60808 100% );
- filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#b20202', endColorstr='#d60808');
- background-color:#b20202;
+/* ========== */
+/* = Events = */
+/* ========== */
+.eventcal {
+ float: left;
+ font-size: 20px;
}
-#new-event-link:active {
- background-color: #b20202;
- position:relative;
- top:1px;
+.vevent {
+ border: 1px solid #CCCCCC;
+}
+.vevent .event-description, .vevent .event-location {
+ margin-left: 10px;
+ margin-right: 10px;
+}
+.vevent .event-start {
+ margin-left: 10px;
+ margin-right: 10px;
}
-#new-event-link a {
- color: #efefef;
- text-align: center;
+#new-event-link {
+ margin-bottom: 10px;
}
.edit-event-link, .plink-event-link {
- float: left;
- margin-top: 4px;
- margin-right: 4px;
- margin-bottom: 15px;
+ float: left;
+ margin-top: 4px;
+ margin-right: 4px;
+ margin-bottom: 15px;
}
.event-description:before {
- content: url('calendar.png');
- margin-right: 15px;
- vertical-align: middle;
+ content: url('../../../images/calendar.png');
+ margin-right: 15px;
}
.event-start, .event-end {
- margin-left: 10px;
- width: 330px;
+ margin-left: 10px;
+ width: 330px;
+ clear: both;
}
.event-start .dtstart, .event-end .dtend {
- float: right;
+ float: right;
}
.event-list-date {
- color: #626262;
- margin-bottom: 10px;
- font-variant:small-caps;
- font-stretch:condensed;
+ margin-bottom: 10px;
}
.prevcal, .nextcal {
- float: left;
- margin-left: 32px;
- margin-right: 32px;
- margin-top: 64px;
+ float: left;
+ margin-left: 32px;
+ margin-right: 32px;
+ margin-top: 64px;
}
-
.event-calendar-end {
- clear: both;
+ clear: both;
}
+
.calendar {
- width: 300px;
- font-family: Helvetica, Arial, sans-serif;
- background-color: #f1f1f1;
- border: 1px solid #dedede;
- margin-bottom: 10px;
- -moz-box-shadow: 5px 5px 8px #959494;
- -webkit-box-shadow: 5px 5px 8px #959494;
- box-shadow: 5px 5px 8px #959494;
+ font-family: Courier, monospace;
+}
+.today {
+ font-weight: bold;
+ color: #FF0000;
}
-.calendar caption{
- background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #d60808), color-stop(1, #b20202) );
- background:-moz-linear-gradient( center top, #d60808 5%, #b20202 100% );
- filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#d60808', endColorstr='#b20202');
- background-color: #b20202;
- padding: 10px 0px 10px 0px;
- width: 300px;
- color: #ffffff;
- font-weight: bold;
- text-align:center;
- font-variant:small-caps;
- -moz-box-shadow: 5px 2px 8px #959494;
- -webkit-box-shadow: 5px 2px 8px #959494;
- box-shadow: 5px 2px 8px #959494;
+.settings-block {
+ border: 1px solid #AAA;
+ margin: 10px;
+ padding: 10px;
}
-tr {
- border: 1px solid #eeeeee;
+.app-title {
+ margin: 10px;
}
-.calendar td {
- font-size: 14px;
- text-align: center;
- padding: 3px 0px;
+#identity-manage-desc {
+ margin-top:15px;
+ margin-bottom: 15px;
}
-.calendar td > a {
- background-color: #cdcdcd;
- padding: 2px;
- color: #000;
+#identity-manage-choose {
+ margin-bottom: 15px;
}
-.calendar th {
- font-size: 16px;
+#identity-submit {
+ margin-top: 20px;
}
-.today {
- font-weight: bold;
- text-align: center;
- background-color: #b20202;
- color: #fff;
+#photo-prev-link, #photo-next-link {
+ padding: 10px;
+ float: left;
}
-
-#event-start-text,
-#event-finish-text {
- margin-top: 10px;
- margin-bottom: 5px;
+
+#photo-photo {
+ float: left;
}
-#event-nofinish-checkbox,
-#event-nofinish-text,
-#event-adjust-checkbox,
-#event-adjust-text,
-#event-share-checkbox {
- float: left;
+#photo-photo-end {
+ clear: both;
}
-#event-datetime-break {
- margin-bottom: 10px;
+.profile-match-photo {
+ float: left;
+ text-align: center;
+ width: 120px;
}
-#event-nofinish-break,
-#event-adjust-break,
-#event-share-break {
- clear: both;
+.profile-match-name {
+ float: left;
+ text-align: center;
+ width: 120px;
+ overflow: hidden;
}
-#event-desc-text,
-#event-location-text {
- margin-top: 10px;
- margin-bottom: 5px;
+.profile-match-break,
+.profile-match-end {
+ clear: both;
}
-#event-submit {
- margin-top: 10px;
+.profile-match-connect {
+ text-align: center;
+ font-weight: bold;
+}
+
+.profile-match-wrapper {
+ float: left;
+ padding: 10px;
+ width: 120px;
+ height: 120px;
+ scroll: auto;
+}
+#profile-match-wrapper-end {
+ clear: both;
}
/* ============= */
/* = Directory = */
/* ============= */
-
+/* contacts menu */
+.contact-photo-wrapper {
+ position: relative;
+}
+.contact-photo {
+ width: 48px;
+ height: 48px;
+ overflow: hidden;
+ display: block;
+}
+.contact-photo img {
+ width: 48px;
+ height: 48px;
+}
+.contact-photo-menu-button {
+ display: none;
+ /* position: absolute; */
+ /* position: absolute; */
+ left: -2px;
+ top: -20px;
+}
+.contact-wrapper {
+ float: left;
+ width: 90px;
+ height: 90px;
+ margin-bottom: 15px;
+}
+.contact-wrapper .contact-photo {
+ width: 80px;
+ height: 80px;
+}
+.contact-wrapper .contact-photo img {
+ width: 80px;
+ height: 80px;
+}
+.contact-wrapper .contact-photo-menu-button {
+ left: 0px;
+ top: 63px;
+}
.directory-item {
- float: left;
- margin: 50px 50px 0px 0px;
+ float: left;
+ width: 200px;
+ height: 200px;
+}
+.directory-item .contact-photo {
+ width: 175px;
+ height: 175px;
+}
+.directory-item .contact-photo img {
+ width: 175px;
+ height: 175px;
+}
+.contact-name {
+ text-align: center;
+ font-weight: bold;
+ font-size: 12px;
+}
+.contact-details {
+ color: #999999;
+}
+
+.photo-top-image-wrapper {
+ position: relative;
+ float: left;
+ margin-top: 15px;
+ margin-right: 15px;
+ width: 200px; height: 200px;
+ overflow: hidden;
+}
+.photo-top-album-name {
+ width: 100%;
+ min-height: 2em;
+ position: absolute;
+ bottom: 0px;
+ padding: 0px 3px;
+ padding-top: 0.5em;
+ background-color: rgb(255, 255, 255);
+}
+#photo-top-end {
+ clear: both;
}
-.directory-details {
- font-size: 0.9em;
- font-variant: small-caps;
- width: 160px;
+#photo-top-links {
+ margin-bottom: 30px;
+ margin-left: 30px;
}
-.directory-name {
- font-size: 1em;
- font-variant: small-caps;
- width: 150px;
+#photos-upload-newalbum-div {
+ float: left;
+ width: 175px;
}
+
diff --git a/view/theme/vier/wall_item.tpl b/view/theme/vier/wall_item.tpl
index 03cbd4c0b..abd2862a1 100644
--- a/view/theme/vier/wall_item.tpl
+++ b/view/theme/vier/wall_item.tpl
@@ -1,7 +1,7 @@
{{ if $indent }}{{ else }}
<div class="wall-item-decor">
- <span class="icon s22 star $isstarred" id="starred-$id" title="$star.starred">$star.starred</span>
- {{ if $lock }}<span class="icon s22 lock fakelink" onclick="lockview(event,$id);" title="$lock">$lock</span>{{ endif }}
+ <span class="icon star $isstarred" id="starred-$id" title="$star.starred">$star.starred</span>
+ {{ if $lock }}<span class="icon lock fakelink" onclick="lockview(event,$id);" title="$lock">$lock</span>{{ endif }}
<img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
</div>
{{ endif }}
@@ -23,8 +23,9 @@
</div>
<div class="wall-item-actions-author">
<a href="$profile_url" target="redir" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle">$name</span></a>
- <span class="wall-item-ago">- &nbsp;
+ <span class="wall-item-ago">-
{{ if $plink }}<a class="link" title="$plink.title" href="$plink.href" style="color: #999">$ago</a>{{ else }} $ago {{ endif }}
+ {{ if $lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$id);">$lock</span> {{ endif }}
</span>
</div>
<div class="wall-item-content">
diff --git a/view/theme/vier/wallwall_item.tpl b/view/theme/vier/wallwall_item.tpl
index 3357bd8e0..8e452f4f6 100644
--- a/view/theme/vier/wallwall_item.tpl
+++ b/view/theme/vier/wallwall_item.tpl
@@ -1,7 +1,7 @@
{{ if $indent }}{{ else }}
<div class="wall-item-decor">
- <span class="icon s22 star $isstarred" id="starred-$id" title="$star.starred">$star.starred</span>
- {{ if $lock }}<span class="icon s22 lock fakelink" onclick="lockview(event,$id);" title="$lock">$lock</span>{{ endif }}
+ <span class="icon star $isstarred" id="starred-$id" title="$star.starred">$star.starred</span>
+ {{ if $lock }}<span class="icon lock fakelink" onclick="lockview(event,$id);" title="$lock">$lock</span>{{ endif }}
<img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
</div>
{{ endif }}
@@ -32,6 +32,7 @@
$to <a href="$owner_url" target="redir" title="$olinktitle" class="wall-item-name-link"><span class="wall-item-name$osparkle" id="wall-item-ownername-$id">$owner_name</span></a>
$vwall <span class="wall-item-ago">- &nbsp;
{{ if $plink }}<a class="link" title="$plink.title" href="$plink.href" style="color: #999">$ago</a>{{ else }} $ago {{ endif }}
+ {{ if $lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$id);">$lock</span> {{ endif }}
</span>
</div>
@@ -61,6 +62,7 @@
{{ if $star }}
<a href="#" id="star-$id" onclick="dostar($id); return false;" class="$star.classdo" title="$star.do">$star.do</a>
<a href="#" id="unstar-$id" onclick="dostar($id); return false;" class="$star.classundo" title="$star.undo">$star.undo</a>
+ <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="$star.classtagger" title="$star.tagger">$star.tagger</a>
{{ endif }}
{{ if $vote }}
diff --git a/view/wallwall_item.tpl b/view/wallwall_item.tpl
index 11297647a..61a248135 100755
--- a/view/wallwall_item.tpl
+++ b/view/wallwall_item.tpl
@@ -55,6 +55,8 @@
{{ if $star }}
<a href="#" id="star-$id" onclick="dostar($id); return false;" class="$star.classdo" title="$star.do">$star.do</a>
<a href="#" id="unstar-$id" onclick="dostar($id); return false;" class="$star.classundo" title="$star.undo">$star.undo</a>
+ <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="$star.classtagger" title="$star.tagger">$star.tagger</a>
+
{{ endif }}
{{ if $vote }}