]> git.mxchange.org Git - friendica.git/commitdiff
Merge remote branch 'upstream/master'
authorMichael Vogel <icarus@dabo.de>
Sun, 2 Sep 2012 15:50:25 +0000 (17:50 +0200)
committerMichael Vogel <icarus@dabo.de>
Sun, 2 Sep 2012 15:50:25 +0000 (17:50 +0200)
168 files changed:
boot.php
database.sql
doc/Groups-and-Privacy.md
doc/network.md
doc/peopleyouknow.md [deleted file]
include/Photo.php
include/Scrape.php
include/api.php
include/bb2diaspora.php
include/bbcode.php
include/config.php
include/conversation.php
include/diaspora.php
include/enotify.php
include/items.php
include/network.php
include/notifier.php
include/oembed.php
include/plugin.php
include/template_processor.php
include/text.php
include/user.php
js/country.js
js/main.js
js/main.min.js
mod/_well_known.php [new file with mode: 0644]
mod/admin.php
mod/content.php
mod/display.php
mod/editpost.php
mod/install.php
mod/item.php
mod/message.php
mod/mood.php [new file with mode: 0644]
mod/network.php
mod/newmember.php
mod/notes.php
mod/photos.php
mod/poke.php
mod/profile.php
mod/profiles.php
mod/settings.php
util/messages.po
view/admin_site.tpl
view/birthdays_reminder.tpl
view/comment_item.tpl
view/de/messages.po
view/de/strings.php
view/events_reminder.tpl
view/head.tpl
view/login_head.tpl [new file with mode: 0644]
view/mood_content.tpl [new file with mode: 0644]
view/search_item.tpl
view/theme/comix-plain/search_item.tpl
view/theme/comix-plain/wall_item.tpl
view/theme/comix-plain/wallwall_item.tpl
view/theme/comix/search_item.tpl
view/theme/comix/wall_item.tpl
view/theme/comix/wallwall_item.tpl
view/theme/darkzero-NS/style.css
view/theme/darkzero/style.css
view/theme/diabook/admin_site.tpl
view/theme/diabook/wall_thread.tpl [new file with mode: 0644]
view/theme/diabook/wallwall_thread.tpl [new file with mode: 0644]
view/theme/dispy/dark/icons.png
view/theme/dispy/dark/icons.svg
view/theme/dispy/dark/style.css
view/theme/dispy/dark/style.less
view/theme/dispy/head.tpl
view/theme/dispy/icons/sparkle.cur
view/theme/dispy/jot-header.tpl
view/theme/dispy/jot.tpl
view/theme/dispy/light/icons.png
view/theme/dispy/light/icons.svg
view/theme/dispy/light/style.css
view/theme/dispy/light/style.less
view/theme/dispy/search_item.tpl
view/theme/dispy/wall_item.tpl
view/theme/dispy/wall_thread.tpl [new file with mode: 0644]
view/theme/dispy/wallwall_item.tpl
view/theme/dispy/wallwall_thread.tpl [new file with mode: 0644]
view/theme/duepuntozero/comment_item.tpl
view/theme/duepuntozero/style.css
view/theme/facepark/search_item.tpl
view/theme/facepark/wall_item.tpl
view/theme/facepark/wallwall_item.tpl
view/theme/frost-mobile/TODO
view/theme/frost-mobile/admin_site.tpl
view/theme/frost-mobile/comment_item.tpl
view/theme/frost-mobile/default.php
view/theme/frost-mobile/end.tpl
view/theme/frost-mobile/experimental [deleted file]
view/theme/frost-mobile/head.tpl
view/theme/frost-mobile/jot-header.tpl
view/theme/frost-mobile/jot.tpl
view/theme/frost-mobile/js/fk.autocomplete.js [new file with mode: 0644]
view/theme/frost-mobile/js/jquery.divgrow-1.3.1.min.js [new file with mode: 0644]
view/theme/frost-mobile/js/main.js
view/theme/frost-mobile/js/main.min.js
view/theme/frost-mobile/js/theme.js
view/theme/frost-mobile/login-style.css
view/theme/frost-mobile/login_head.tpl [new file with mode: 0644]
view/theme/frost-mobile/mail_conv.tpl [new file with mode: 0644]
view/theme/frost-mobile/mobile [new file with mode: 0644]
view/theme/frost-mobile/nav.tpl
view/theme/frost-mobile/profile_photo.tpl [new file with mode: 0644]
view/theme/frost-mobile/style.css
view/theme/frost-mobile/theme.php
view/theme/frost-mobile/threaded_conversation.tpl [new file with mode: 0644]
view/theme/frost-mobile/wall_item.tpl
view/theme/frost-mobile/wall_thread.tpl [new file with mode: 0644]
view/theme/frost-mobile/wallwall_item.tpl
view/theme/frost-mobile/wallwall_thread.tpl [new file with mode: 0644]
view/theme/frost/TODO
view/theme/frost/admin_site.tpl
view/theme/frost/comment_item.tpl
view/theme/frost/conversation.tpl [deleted file]
view/theme/frost/default.php
view/theme/frost/end.tpl
view/theme/frost/experimental [deleted file]
view/theme/frost/js/acl.js
view/theme/frost/js/acl.min.js
view/theme/frost/js/jquery.divgrow-1.3.1.min.js [new file with mode: 0644]
view/theme/frost/js/main.js
view/theme/frost/js/main.min.js
view/theme/frost/js/theme.js
view/theme/frost/js/theme.min.js
view/theme/frost/login-style.css
view/theme/frost/login_head.tpl [new file with mode: 0644]
view/theme/frost/nav.tpl
view/theme/frost/posted_date_widget.tpl [new file with mode: 0644]
view/theme/frost/style.css
view/theme/frost/theme.php
view/theme/frost/wall_item.tpl
view/theme/frost/wall_thread.tpl [new file with mode: 0644]
view/theme/frost/wallwall_item.tpl
view/theme/frost/wallwall_thread.tpl [new file with mode: 0644]
view/theme/quattro/comment_item.tpl
view/theme/quattro/dark/colors.less
view/theme/quattro/dark/style.css
view/theme/quattro/experimental [deleted file]
view/theme/quattro/green/colors.less
view/theme/quattro/green/style.css
view/theme/quattro/icons/bbedit.png [new file with mode: 0644]
view/theme/quattro/mail_conv.tpl
view/theme/quattro/mail_list.tpl
view/theme/quattro/profile_vcard.tpl
view/theme/quattro/prv_message.tpl [new file with mode: 0644]
view/theme/quattro/quattro.less
view/theme/quattro/search_item.tpl
view/theme/quattro/theme.php
view/theme/quattro/threaded_conversation.tpl [new file with mode: 0644]
view/theme/quattro/wall_item.tpl
view/theme/quattro/wall_item_tag.tpl
view/theme/quattro/wall_thread.tpl [new file with mode: 0644]
view/theme/quattro/wallwall_item.tpl
view/theme/quattro/wallwall_thread.tpl [new file with mode: 0644]
view/theme/testbubble/search_item.tpl
view/theme/testbubble/wall_item.tpl
view/theme/testbubble/wallwall_item.tpl
view/theme/vier/threaded_conversation.tpl [new file with mode: 0644]
view/theme/vier/wall_thread.tpl [new file with mode: 0644]
view/theme/vier/wallwall_thread.tpl [new file with mode: 0644]
view/threaded_conversation.tpl [new file with mode: 0644]
view/wall_item.tpl
view/wall_thread.tpl [new file with mode: 0644]
view/wallwall_item.tpl
view/wallwall_thread.tpl [new file with mode: 0644]

index 5a563c9914b95dee1d605d4a1a929021521c8dd7..7a186ad664ac66d90b06fddf78e8c810285ccc14 100644 (file)
--- a/boot.php
+++ b/boot.php
@@ -11,7 +11,7 @@ require_once('include/cache.php');
 require_once('library/Mobile_Detect/Mobile_Detect.php');
 
 define ( 'FRIENDICA_PLATFORM',     'Friendica');
-define ( 'FRIENDICA_VERSION',      '3.0.1421' );
+define ( 'FRIENDICA_VERSION',      '3.0.1449' );
 define ( 'DFRN_PROTOCOL_VERSION',  '2.23'    );
 define ( 'DB_UPDATE_VERSION',      1154      );
 
@@ -253,6 +253,7 @@ define ( 'ACTIVITY_TAG',         NAMESPACE_ACTIVITY_SCHEMA . 'tag' );
 define ( 'ACTIVITY_FAVORITE',    NAMESPACE_ACTIVITY_SCHEMA . 'favorite' );
 
 define ( 'ACTIVITY_POKE',        NAMESPACE_ZOT . '/activity/poke' );
+define ( 'ACTIVITY_MOOD',        NAMESPACE_ZOT . '/activity/mood' );
 
 define ( 'ACTIVITY_OBJ_COMMENT', NAMESPACE_ACTIVITY_SCHEMA . 'comment' );
 define ( 'ACTIVITY_OBJ_NOTE',    NAMESPACE_ACTIVITY_SCHEMA . 'note' );
@@ -354,6 +355,19 @@ if(! class_exists('App')) {
 
                public $category;
 
+               // Allow themes to control internal parameters
+               // by changing App values in theme.php
+               //
+               // Possibly should make these part of the plugin
+               // system, but it seems like overkill to invoke
+               // all the plugin machinery just to change a couple
+               // of values
+               public  $sourcename = '';
+               public  $videowidth = 425;
+               public  $videoheight = 350;
+               public  $force_max_items = 0;
+               public  $theme_thread_allow = true;
+
                private $scheme;
                private $hostname;
                private $baseurl;
@@ -458,6 +472,7 @@ if(! class_exists('App')) {
                        $this->argc = count($this->argv);
                        if((array_key_exists('0',$this->argv)) && strlen($this->argv[0])) {
                                $this->module = str_replace(".", "_", $this->argv[0]);
+                               $this->module = str_replace("-", "_", $this->module);
                        }
                        else {
                                $this->argc = 1;
@@ -465,16 +480,6 @@ if(! class_exists('App')) {
                                $this->module = 'home';
                        }
 
-                       /**
-                        * Special handling for the webfinger/lrdd host XRD file
-                        */
-
-                       if($this->cmd === '.well-known/host-meta') {
-                               $this->argc = 1;
-                               $this->argv = array('hostxrd');
-                               $this->module = 'hostxrd';
-                       }
-
                        /**
                         * See if there is any page number information, and initialise
                         * pagination
@@ -722,10 +727,14 @@ if(! function_exists('check_config')) {
                // than the currently visited url, store the current value accordingly.
                // "Radically different" ignores common variations such as http vs https
                // and www.example.com vs example.com.
+               // We will only change the url to an ip address if there is no existing setting
 
-               if((! x($url)) || (! link_compare($url,$a->get_baseurl())))
+               if(! x($url))
+                       $url = set_config('system','url',$a->get_baseurl());
+               if((! link_compare($url,$a->get_baseurl())) && (! preg_match("/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/",$a->get_hostname)))
                        $url = set_config('system','url',$a->get_baseurl());
 
+
                if($build != DB_UPDATE_VERSION) {
                        $stored = intval($build);
                        $current = intval(DB_UPDATE_VERSION);
@@ -887,6 +896,10 @@ if(! function_exists('login')) {
                        $tpl = get_markup_template("logout.tpl");
                }
                else {
+                       $a->page['htmlhead'] .= replace_macros(get_markup_template("login_head.tpl"),array(
+                               '$baseurl'              => $a->get_baseurl(true)
+                       ));
+
                        $tpl = get_markup_template("login.tpl");
                        $_SESSION['return_url'] = $a->query_string;
                }
@@ -1454,7 +1467,10 @@ if(! function_exists('proc_run')) {
                        $args[$x] = escapeshellarg($args[$x]);
 
                $cmdline = implode($args," ");
-               proc_close(proc_open($cmdline." &",array(),$foo));
+               if(get_config('system','proc_windows'))
+                       proc_close(proc_open('start /b ' . $cmdline,array(),$foo));
+               else
+                       proc_close(proc_open($cmdline." &",array(),$foo));
        }
 }
 
index fa4f1bd58b15d92595e74a19e3766aed51dbf079..6ba4921cb744a3db76674075ae30db1a9ce6e272 100644 (file)
@@ -606,7 +606,7 @@ CREATE TABLE IF NOT EXISTS `item_id` (
 -- Table structure for table `locks`
 --
 
-CREATE TABLE `locks` (
+CREATE TABLE IF NOT EXISTS `locks` (
   `id` int(11) NOT NULL AUTO_INCREMENT,
   `name` char(128) NOT NULL,
   `locked` tinyint(1) NOT NULL DEFAULT '0',
index 09c6a7349b621b53a4f89499b18e068abd7d1bed..6e860b20d192e507c4cbb6b981559c5a16ba23be 100644 (file)
@@ -4,7 +4,9 @@ Groups and Privacy
 * [Home](help)
 
 
-Groups are merely collections of friends. But Friendica uses these to unlock some very powerful features. 
+Groups are merely collections of friends. But Friendica uses these to unlock some very powerful features.
+
+**Setting Up Groups** 
 
 To create a group, visit your Friendica "Contacts" page and select "Create a new group". Give the group a name.
 
@@ -14,6 +16,8 @@ You will have two boxes on this page. The top box is the roster of current group
 
 If you click on a photo of a person who isn't in the group, they will be put into the group. If you click on a photo of a person who is in the group, they will be removed from it. 
 
+**Access Control**
+
 Once you have created a group, you may use it in any access control list. This is the little lock icon beneath the status update box on your home page. If you click this you can select who can see and who can *not* see the post you are about to make.  These can be individual people or groups. 
 
 On your "Network" page you will find posts and conversation from everybody in your network. You may select an individual group on this page to show conversations pertaining only to members of that group. 
@@ -22,32 +26,44 @@ But wait, there's more...
 
 If you look carefully when visiting a group from your Network page, the lock icon under the status update box has an exclamation mark next to it. This is meant to draw attention to that lock. Click the lock. You will see that since you are only viewing a certain group of people, your status updates while on that screen default to only being seen by that same group of people. This is how you keep your future employers from seeing what you write to your drinking buddies.  You can over-ride this setting, but this makes it easy to separate your conversations into different friend circles.
 
+**Default Post Privacy**
+
+By default, Friendica assumes that you want all of your posts to be private. Therefore, when you sign up, Friendica creates a group for you that it will automatically add all of your contacts to. All of your posts are restricted to that group by default.
+
+Note that this behavior can be overridden by your site admin, in which case your posts will be "public" (i.e. visible to the entire Internet) by default.
+
+If you want your posts to be "public" by default, you can change your default post permissions on your Settings page. You also have the option there to change which groups you post to by default, or to change which group your new contacts get placed into by default.
+
+**Privacy Concerns To Be Aware Of**
+
 These private conversations work best when your friends are Friendica members. We know who else can see the conversations - nobody, *unless* your friends cut and paste the messages and send them to others. 
 
 This is a trust issue you need to be aware of. No software in the world can prevent your friends from leaking your confidential and trusted communications. Only a wise choice of friends.  
 
 But it isn't as clear cut when dealing with status.net, identi.ca and other network providers. You are encouraged to be **very** cautious when other network members are in a group because it's entirely possible for your private messages to end up in a public newsfeed. If you look at the Contact Edit page for any person, we will tell you whether or not they are members of an insecure network where you should exercise caution.
 
-On your "Settings" page, you may create a set of default permissions which apply to every post that you create. 
-
 Once you have created a post, you can not change the permissions assigned. Within seconds it has been delivered to lots of people - and perhaps everybody it was addressed to. If you mistakenly created a message and wish you could take it back, the best you can do is to delete it. We will send out a delete notification to everybody who received the message - and this should wipe out the message with the same speed it was initially propagated. In most cases it will be completely wiped from the Internet - in under a minute. Again, this applies to Friendica networks. Once a message spreads to other networks, it may not be removed quickly and in some cases it may not be removed at all. 
 
-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. 
+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
+Profiles, Photos, and Privacy
 =============================
 
 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.
 
+**Photos**
+
 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.
 
+**Profiles**
+
 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
+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.   
index afb09239501097ab42ed2dab49def0dea66a2b1d..08ddca290e15f11d9f5aecb9892d695387261a4c 100644 (file)
@@ -2,7 +2,7 @@ This is your Network Tab.  If you get lost, you can <a href="help/network">click
 
 This is a bit like the Newsfeed at Facebook or the Stream at Diaspora.  It's where all the posts from your contacts, groups, and feeds will appear.  If you're new, you won't see anything in this page, unless you posted your status in the last step.  If you've already added a few friends, you'll be able to see their posts.  Here, you can comment, like, or dislike posts, or click on somebody's name to visit their profile page where you can write on their wall.
 
-Now we need to fill it up, the first step, is to <a href="help/peopleyouknow"> add people you already know from Facebook</a>.
+Now we need to fill it up, the first step, is to <a href="help/makingnewfriends"> make some new friends</a>.
 
 <iframe src="network" width="950" height="600"></iframe>
 
diff --git a/doc/peopleyouknow.md b/doc/peopleyouknow.md
deleted file mode 100644 (file)
index ae0c9ef..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-This is your connector settings page.  If you get lost, you can <a href="help/network">click this link</a> to bring yourself back here.
-
-This is the bit that makes Friendica unique.  You can connect to <i>anybody on the internet</i> from your Friendica account using this page!  The available connectors varies depending on which plugins you have installed, but for now, we'll walk you through Facebook.  Note that not all servers have the Facebook connector installed.  If you can't find it in the list below, don't worry, we'll look at ways of connecting to more people in the following pages.  
-
-The biggest of all social networks is Facebook.  Fortunately, this connector is really easy.  Scroll down the page, and click Facebook Connector Settings.  Enter your Facebook user name and password and let the application (the connector) do everything the options suggest.  You can <a href="https://github.com/friendica/friendica/wiki/How-to:-Friendica%E2%80%99s-Facebook-connector" target="_blank">fine tune this</a> or experiment with the other connectors too.  If you need help, you can always ask at <a href="http://helpers.pyxis.uberspace.de/profile/helpers" target="_blank">Friendica Support</a> or <a href="help/Connectors" target="_blank">see the instructions here</a>.
-
-When you're ready, we can move on to <a href="help/makingnewfriends">making new friends</a>.
-
-
-
-<iframe src="settings/connectors" width="950" height="600"></iframe>
-
-
index 1f751c77f3f85ae0cb24c86229e31407125f6bd6..74d4c746d6f89eefbd05f4326f95d18be8e03d99 100644 (file)
@@ -247,7 +247,7 @@ class Photo {
         if($this->is_imagick()) {
             $this->image->setFirstIterator();
             do {
-                $this->image->rotateImage(new ImagickPixel(), $degrees);
+                $this->image->rotateImage(new ImagickPixel(), -$degrees); // ImageMagick rotates in the opposite direction of imagerotate()
             } while ($this->image->nextImage());
             return;
         }
index b784650cd168722cb462d4031e1a9fb888b9e7a8..85c636788910e94f3f3295a3f7b32e939b04acf3 100644 (file)
@@ -394,7 +394,10 @@ function probe_url($url, $mode = PROBE_NORMAL) {
                                }
                                if($link['@attributes']['rel'] === 'diaspora-public-key') {
                                        $diaspora_key = base64_decode(unamp($link['@attributes']['href']));
-                                       $pubkey = rsatopem($diaspora_key);
+                                       if(strstr($diaspora_key,'RSA '))
+                                               $pubkey = rsatopem($diaspora_key);
+                                       else
+                                               $pubkey = $diaspora_key;
                                        $diaspora = true;
                                }
                        }
index 7d230629b0dab4445e41a0d9de140c46f71fef3e..456d984de17fb287276695842fe28b0cfaa73b57 100644 (file)
 
                $ret = api_format_items($r,$user_info);
 
+               // We aren't going to try to figure out at the item, group, and page
+               // level which items you've seen and which you haven't. If you're looking
+               // at the network timeline just mark everything seen. 
+       
+               $r = q("UPDATE `item` SET `unseen` = 0 
+                       WHERE `unseen` = 1 AND `uid` = %d",
+                       intval($user_info['uid'])
+               );
+
 
                $data = array('$statuses' => $ret);
                switch($type){
index 9ede42f6c7a66fab7597566296584d4e3968c3fc..75fe1ef35dd02d7b5aa33d824927faba7811d2fb 100644 (file)
@@ -8,65 +8,6 @@ require_once("include/bbcode.php");
 require_once("include/markdownify/markdownify.php");
 
 
-function get_bb_tag_pos($s, $name, $occurance = 1) {
-
-       if($occurance < 1)
-               $occurance = 1;
-
-       $start_open = -1;
-       for($i = 1; $i <= $occurance; $i++) {
-               if( $start_open !== false)
-                       $start_open = strpos($s, '[' . $name, $start_open + 1); // allow [name= type tags
-       }
-
-       if( $start_open === false)
-               return false;
-
-       $start_equal = strpos($s, '=', $start_open);
-       $start_close = strpos($s, ']', $start_open);
-
-       if( $start_close === false)
-               return false;
-
-       $start_close++;
-
-       $end_open = strpos($s, '[/' . $name . ']', $start_close);
-
-       if( $end_open === false)
-               return false;
-
-       $res = array( 'start' => array('open' => $start_open, 'close' => $start_close),
-                     'end' => array('open' => $end_open, 'close' => $end_open + strlen('[/' . $name . ']')) );
-       if( $start_equal !== false)
-               $res['start']['equal'] = $start_equal + 1;
-
-       return $res;
-}
-
-function bb_tag_preg_replace($pattern, $replace, $name, $s) {
-
-       $string = $s;
-
-       $occurance = 1;
-       $pos = get_bb_tag_pos($string, $name, $occurance);
-       while($pos !== false && $occurance < 1000) {
-
-               $start = substr($string, 0, $pos['start']['open']);
-               $subject = substr($string, $pos['start']['open'], $pos['end']['close'] - $pos['start']['open']);
-               $end = substr($string, $pos['end']['close']);
-               if($end === false)
-                       $end = '';
-
-               $subject = preg_replace($pattern, $replace, $subject);
-               $string = $start . $subject . $end;
-
-               $occurance++;
-               $pos = get_bb_tag_pos($string, $name, $occurance);
-       }
-
-       return $string;
-}
-
 // we don't want to support a bbcode specific markdown interpreter
 // and the markdown library we have is pretty good, but provides HTML output.
 // So we'll use that to convert to HTML, then convert the HTML back to bbcode,
@@ -113,7 +54,7 @@ function diaspora2bb($s) {
        //$s = preg_replace("/([^\]\=]|^)(https?\:\/\/)(vimeo|youtu|www\.youtube|soundcloud)([a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)/ism", '$1[url=$2$3$4]$2$3$4[/url]',$s);
        $s = bb_tag_preg_replace("/\[url\=?(.*?)\]https?:\/\/www.youtube.com\/watch\?v\=(.*?)\[\/url\]/ism",'[youtube]$2[/youtube]','url',$s);
        $s = bb_tag_preg_replace("/\[url\=https?:\/\/www.youtube.com\/watch\?v\=(.*?)\].*?\[\/url\]/ism",'[youtube]$1[/youtube]','url',$s);
-       $s = bb_tag_preg_replace("/\[url\=?(.*?)\]https?:\/     \/vimeo.com\/([0-9]+)(.*?)\[\/url\]/ism",'[vimeo]$2[/vimeo]','url',$s);
+       $s = bb_tag_preg_replace("/\[url\=?(.*?)\]https?:\/\/vimeo.com\/([0-9]+)(.*?)\[\/url\]/ism",'[vimeo]$2[/vimeo]','url',$s);
        $s = bb_tag_preg_replace("/\[url\=https?:\/\/vimeo.com\/([0-9]+)\](.*?)\[\/url\]/ism",'[vimeo]$1[/vimeo]','url',$s);
        // remove duplicate adjacent code tags
        $s = preg_replace("/(\[code\])+(.*?)(\[\/code\])+/ism","[code]$2[/code]", $s);
@@ -196,6 +137,14 @@ function bb2diaspora($Text,$preserve_nl = false, $fordiaspora = true) {
        // The bbcode parser now handles youtube-links (and the other stuff) correctly.
        // Additionally the html code is now fixed so that lists are now working.
 
+       /**
+        * Transform #tags, strip off the [url] and replace spaces with underscore
+        */
+       $Text = preg_replace_callback('/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', create_function('$match',
+               'return \'#\'. str_replace(\' \', \'_\', $match[2]);'
+       ), $Text);
+
+
        // Converting images with size parameters to simple images. Markdown doesn't know it.
        $Text = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.*?)\[\/img\]/ism", '[img]$3[/img]', $Text);
 
@@ -213,6 +162,22 @@ function bb2diaspora($Text,$preserve_nl = false, $fordiaspora = true) {
        $md = new Markdownify(false, false, false);
        $Text = $md->parseString($Text);
 
+       // The Markdownify converter converts underscores '_' in URLs to '\_', which
+       // messes up the URL. Manually fix these
+       $count = 1;
+       $pos = bb_find_open_close($Text, '[', ']', $count);
+       while($pos !== false) {
+               $start = substr($Text, 0, $pos['start']);
+               $subject = substr($Text, $pos['start'], $pos['end'] - $pos['start'] + 1);
+               $end = substr($Text, $pos['end'] + 1);
+
+               $subject = str_replace('\_', '_', $subject);
+               $Text = $start . $subject . $end;
+
+               $count++;
+               $pos = bb_find_open_close($Text, '[', ']', $count);
+       }       
+
        // If the text going into bbcode() has a plain URL in it, i.e.
        // with no [url] tags around it, it will come out of parseString()
        // looking like: <http://url.com>, which gets removed by strip_tags().
index 97e9d76f83f37874cd187c93e294b2d6b53a8aeb..5a6505740eb8fc7511013ae3aeed7abea6e855b0 100644 (file)
@@ -64,6 +64,89 @@ function bb_unspacefy_and_trim($st) {
   return $unspacefied;
 }
 
+function bb_find_open_close($s, $open, $close, $occurance = 1) {
+
+       if($occurance < 1)
+               $occurance = 1;
+
+       $start_pos = -1;
+       for($i = 1; $i <= $occurance; $i++) {
+               if( $start_pos !== false)
+                       $start_pos = strpos($s, $open, $start_pos + 1);
+       }
+
+       if( $start_pos === false)
+               return false;
+
+       $end_pos = strpos($s, $close, $start_pos);
+
+       if( $end_pos === false)
+               return false;
+
+       $res = array( 'start' => $start_pos, 'end' => $end_pos );
+
+       return $res;
+}
+
+function get_bb_tag_pos($s, $name, $occurance = 1) {
+
+       if($occurance < 1)
+               $occurance = 1;
+
+       $start_open = -1;
+       for($i = 1; $i <= $occurance; $i++) {
+               if( $start_open !== false)
+                       $start_open = strpos($s, '[' . $name, $start_open + 1); // allow [name= type tags
+       }
+
+       if( $start_open === false)
+               return false;
+
+       $start_equal = strpos($s, '=', $start_open);
+       $start_close = strpos($s, ']', $start_open);
+
+       if( $start_close === false)
+               return false;
+
+       $start_close++;
+
+       $end_open = strpos($s, '[/' . $name . ']', $start_close);
+
+       if( $end_open === false)
+               return false;
+
+       $res = array( 'start' => array('open' => $start_open, 'close' => $start_close),
+                     'end' => array('open' => $end_open, 'close' => $end_open + strlen('[/' . $name . ']')) );
+       if( $start_equal !== false)
+               $res['start']['equal'] = $start_equal + 1;
+
+       return $res;
+}
+
+function bb_tag_preg_replace($pattern, $replace, $name, $s) {
+
+       $string = $s;
+
+       $occurance = 1;
+       $pos = get_bb_tag_pos($string, $name, $occurance);
+       while($pos !== false && $occurance < 1000) {
+
+               $start = substr($string, 0, $pos['start']['open']);
+               $subject = substr($string, $pos['start']['open'], $pos['end']['close'] - $pos['start']['open']);
+               $end = substr($string, $pos['end']['close']);
+               if($end === false)
+                       $end = '';
+
+               $subject = preg_replace($pattern, $replace, $subject);
+               $string = $start . $subject . $end;
+
+               $occurance++;
+               $pos = get_bb_tag_pos($string, $name, $occurance);
+       }
+
+       return $string;
+}
+
 if(! function_exists('bb_extract_images')) {
 function bb_extract_images($body) {
 
@@ -340,9 +423,14 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true) {
        $Text = preg_replace("/\[img\](.*?)\[\/img\]/ism", '<img src="$1" alt="' . t('Image/photo') . '" />', $Text);
 
 
+
+       $Text = preg_replace("/\[crypt\](.*?)\[\/crypt\]/ism",'<br/><img src="' .$a->get_baseurl() . '/images/lock_icon.gif" alt="' . t('Encrypted content') . '" title="' . t('Encrypted content') . '" /><br />', $Text);
+       $Text = preg_replace("/\[crypt=(.*?)\](.*?)\[\/crypt\]/ism",'<br/><img src="' .$a->get_baseurl() . '/images/lock_icon.gif" alt="' . t('Encrypted content') . '" title="' . '$1' . ' ' . t('Encrypted content') . '" /><br />', $Text);
+
+
        // Try to Oembed
        if ($tryoembed) {
-               $Text = preg_replace("/\[video\](.*?\.(ogg|ogv|oga|ogm|webm|mp4))\[\/video\]/ism", '<video src="$1" controls="controls" width="425" height="350"><a href="$1">$1</a></video>', $Text);
+               $Text = preg_replace("/\[video\](.*?\.(ogg|ogv|oga|ogm|webm|mp4))\[\/video\]/ism", '<video src="$1" controls="controls" width="' . $a->videowidth . '" height="' . $a->videoheight . '"><a href="$1">$1</a></video>', $Text);
                $Text = preg_replace("/\[audio\](.*?\.(ogg|ogv|oga|ogm|webm|mp4|mp3))\[\/audio\]/ism", '<audio src="$1" controls="controls"><a href="$1">$1</a></audio>', $Text);
 
                $Text = preg_replace_callback("/\[video\](.*?)\[\/video\]/ism", 'tryoembed', $Text);
@@ -356,7 +444,7 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true) {
 
 
        if ($tryoembed)
-               $Text = preg_replace("/\[iframe\](.*?)\[\/iframe\]/ism", '<iframe src="$1" width="425" height="350"><a href="$1">$1</a></iframe>', $Text);
+               $Text = preg_replace("/\[iframe\](.*?)\[\/iframe\]/ism", '<iframe src="$1" width="' . $a->videowidth . '" height="' . $a->videoheight . '"><a href="$1">$1</a></iframe>', $Text);
        else
                $Text = preg_replace("/\[iframe\](.*?)\[\/iframe\]/ism", '<a href="$1">$1</a>', $Text);
 
@@ -372,7 +460,7 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true) {
        $Text = preg_replace("/\[youtube\]https?:\/\/youtu.be\/(.*?)\[\/youtube\]/ism",'[youtube]$1[/youtube]',$Text);
 
        if ($tryoembed)
-               $Text = preg_replace("/\[youtube\]([A-Za-z0-9\-_=]+)(.*?)\[\/youtube\]/ism", '<iframe width="425" height="350" src="http://www.youtube.com/embed/$1" frameborder="0" ></iframe>', $Text);
+               $Text = preg_replace("/\[youtube\]([A-Za-z0-9\-_=]+)(.*?)\[\/youtube\]/ism", '<iframe width="' . $a->videowidth . '" height="' . $a->videoheight . '" src="http://www.youtube.com/embed/$1" frameborder="0" ></iframe>', $Text);
        else
                $Text = preg_replace("/\[youtube\]([A-Za-z0-9\-_=]+)(.*?)\[\/youtube\]/ism", "http://www.youtube.com/watch?v=$1", $Text);
 
@@ -386,7 +474,7 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true) {
        $Text = preg_replace("/\[vimeo\]https?:\/\/vimeo.com\/([0-9]+)(.*?)\[\/vimeo\]/ism",'[vimeo]$1[/vimeo]',$Text);
 
        if ($tryoembed)
-               $Text = preg_replace("/\[vimeo\]([0-9]+)(.*?)\[\/vimeo\]/ism", '<iframe width="425" height="350" src="http://player.vimeo.com/video/$1" frameborder="0" ></iframe>', $Text);
+               $Text = preg_replace("/\[vimeo\]([0-9]+)(.*?)\[\/vimeo\]/ism", '<iframe width="' . $a->videowidth . '" height="' . $a->videoheight . '" src="http://player.vimeo.com/video/$1" frameborder="0" ></iframe>', $Text);
        else
                $Text = preg_replace("/\[vimeo\]([0-9]+)(.*?)\[\/vimeo\]/ism", "http://vimeo.com/$1", $Text);
 
@@ -424,6 +512,8 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true) {
 
 
        $Text = preg_replace('/\[\&amp\;([#a-z0-9]+)\;\]/','&$1;',$Text);
+       $Text = preg_replace('/\&\#039\;/','\'',$Text);
+       $Text = preg_replace('/\&quot\;/','"',$Text);
 
        // fix any escaped ampersands that may have been converted into links
        $Text = preg_replace("/\<(.*?)(src|href)=(.*?)\&amp\;(.*?)\>/ism",'<$1$2=$3&$4>',$Text);
index 1f2a70e5a144bc4529523bd104b1428646b1c29b..44606e329acdab68e79cf1c9b309141259f991ec 100644 (file)
@@ -68,7 +68,7 @@ function get_config($family, $key, $instore = false) {
        );
        if(count($ret)) {
                // manage array value
-               $val = (preg_match("|^a:[0-9]+:{.*}$|", $ret[0]['v'])?unserialize( $ret[0]['v']):$ret[0]['v']);
+               $val = (preg_match("|^a:[0-9]+:{.*}$|s", $ret[0]['v'])?unserialize( $ret[0]['v']):$ret[0]['v']);
                $a->config[$family][$key] = $val;
                return $val;
        }
@@ -162,7 +162,7 @@ function get_pconfig($uid,$family, $key, $instore = false) {
        );
 
        if(count($ret)) {
-               $val = (preg_match("|^a:[0-9]+:{.*}$|", $ret[0]['v'])?unserialize( $ret[0]['v']):$ret[0]['v']);
+               $val = (preg_match("|^a:[0-9]+:{.*}$|s", $ret[0]['v'])?unserialize( $ret[0]['v']):$ret[0]['v']);
                $a->config[$uid][$family][$key] = $val;
                return $val;
        }
index 9047a97796c9460f7ccb9a0e3103b02a7063701d..1fc0642856015b4b0d80f690460662f53547e09a 100644 (file)
@@ -1,5 +1,8 @@
 <?php
 
+require_once("include/bbcode.php");
+
+
 // Note: the code in 'item_extract_images' and 'item_redir_and_replace_images'
 // is identical to the code in mod/message.php for 'item_extract_images' and
 // 'item_redir_and_replace_images'
@@ -51,19 +54,27 @@ function item_redir_and_replace_images($body, $images, $cid) {
        $origbody = $body;
        $newbody = '';
 
-       for($i = 0; $i < count($images); $i++) {
-               $search = '/\[url\=(.*?)\]\[!#saved_image' . $i . '#!\]\[\/url\]' . '/is';
+       $cnt = 1;
+       $pos = get_bb_tag_pos($origbody, 'url', 1);
+       while($pos !== false && $cnt < 1000) {
+
+               $search = '/\[url\=(.*?)\]\[!#saved_image([0-9]*)#!\]\[\/url\]' . '/is';
                $replace = '[url=' . z_path() . '/redir/' . $cid 
-                          . '?f=1&url=' . '$1' . '][!#saved_image' . $i . '#!][/url]' ;
+                          . '?f=1&url=' . '$1' . '][!#saved_image' . '$2' .'#!][/url]';
 
-               $img_end = strpos($origbody, '[!#saved_image' . $i . '#!][/url]') + strlen('[!#saved_image' . $i . '#!][/url]');
-               $process_part = substr($origbody, 0, $img_end);
-               $origbody = substr($origbody, $img_end);
+               $newbody .= substr($origbody, 0, $pos['start']['open']);
+               $subject = substr($origbody, $pos['start']['open'], $pos['end']['close'] - $pos['start']['open']);
+               $origbody = substr($origbody, $pos['end']['close']);
+               if($origbody === false)
+                       $origbody = '';
 
-               $process_part = preg_replace($search, $replace, $process_part);
-               $newbody = $newbody . $process_part;
+               $subject = preg_replace($search, $replace, $subject);
+               $newbody .= $subject;
+
+               $cnt++;
+               $pos = get_bb_tag_pos($origbody, 'url', 1);
        }
-       $newbody = $newbody . $origbody;
+       $newbody .= $origbody;
 
        $cnt = 0;
        foreach($images as $image) {
@@ -205,6 +216,20 @@ function localize_item(&$item){
                $item['body'] = sprintf($txt, $A, $B). "\n\n\n" . $Bphoto;
 
        }
+       if (stristr($item['verb'],ACTIVITY_MOOD)) {
+               $verb = urldecode(substr($item['verb'],strpos($item['verb'],'#')+1));
+               if(! $verb)
+                       return;
+
+               $Aname = $item['author-name'];
+               $Alink = $item['author-link'];
+               $A = '[url=' . zrl($Alink) . ']' . $Aname . '[/url]';
+               
+               $txt = t('%1$s is currently %2$s');
+
+               $item['body'] = sprintf($txt, $A, t($verb));
+       }
+
     if ($item['verb']===ACTIVITY_TAG){
                $r = q("SELECT * from `item`,`contact` WHERE 
                `item`.`contact-id`=`contact`.`id` AND `item`.`uri`='%s';",
@@ -279,10 +304,10 @@ function localize_item(&$item){
        }
 
        // add zrl's to public images
-       if(preg_match_all('/\[url=(.*?)\/photos\/(.*?)\/image\/(.*?)\]\[img(.*?)\]h(.*?)\[\/img\]\[\/url\]/is',$item['body'],$matches,PREG_SET_ORDER)) {
-               foreach($matches as $mtch) {
-                               $item['body'] = str_replace($mtch[0],'[url=' . zrl($mtch[1] . '/photos/' . $mtch[2] . '/image/' . $mtch[3] ,true) . '][img' . $mtch[4] . ']h' . $mtch[5]  . '[/img][/url]',$item['body']);
-               }
+       $photo_pattern = "/\[url=(.*?)\/photos\/(.*?)\/image\/(.*?)\]\[img(.*?)\]h(.*?)\[\/img\]\[\/url\]/is";
+       if(preg_match($photo_pattern,$item['body'])) {
+               $photo_replace = '[url=' . zrl('$1' . '/photos/' . '$2' . '/image/' . '$3' ,true) . '][img' . '$4' . ']h' . '$5'  . '[/img][/url]';
+               $item['body'] = bb_tag_preg_replace($photo_pattern, $photo_replace, 'url', $item['body']);
        }
 
        // add sparkle links to appropriate permalinks
@@ -299,6 +324,359 @@ function localize_item(&$item){
 
 }
 
+/**
+ * Count the total of comments on this item and its desendants
+ */
+function count_descendants($item) {
+       $total = count($item['children']);
+
+       if($total > 0) {
+               foreach($item['children'] as $child) {
+                       if($child['verb'] === ACTIVITY_LIKE || $child['verb'] === ACTIVITY_DISLIKE) {
+                               $total --;
+                       }
+                       $total += count_descendants($child);
+               }
+       }
+
+       return $total;
+}
+
+/**
+ * Recursively prepare a thread for HTML
+ */
+
+function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $profile_owner, $alike, $dlike, $thread_level=1) {
+       $result = array();
+
+       $wall_template = 'wall_thread.tpl';
+       $wallwall_template = 'wallwall_thread.tpl';
+       $items_seen = 0;
+       $nb_items = count($items);
+       
+       $total_children = $nb_items;
+       
+       foreach($items as $item) {
+               if($item['network'] === NETWORK_MAIL && local_user() != $item['uid']) {
+                       // Don't count it as a visible item
+                       $nb_items--;
+                       $total_children --;
+               }
+               if($item['verb'] === ACTIVITY_LIKE || $item['verb'] === ACTIVITY_DISLIKE) {
+                       $nb_items --;
+                       $total_children --;
+
+               }
+       }
+
+       foreach($items as $item) {
+               // prevent private email reply to public conversation from leaking.
+               if($item['network'] === NETWORK_MAIL && local_user() != $item['uid']) {
+                       continue;
+               }
+
+               if($item['verb'] === ACTIVITY_LIKE || $item['verb'] === ACTIVITY_DISLIKE) {
+                       continue;
+               }
+               
+               $items_seen++;
+               
+               $comment = '';
+               $template = $wall_template;
+               $commentww = '';
+               $sparkle = '';
+               $owner_url = $owner_photo = $owner_name = '';
+               $buttons = '';
+               $dropping = false;
+               $star = false;
+               $isstarred = "unstarred";
+               $photo = $item['photo'];
+               $thumb = $item['thumb'];
+               $indent = '';
+               $osparkle = '';
+               $lastcollapsed = false;
+               $firstcollapsed = false;
+               $total_children += count_descendants($item);
+
+               $toplevelpost = (($item['id'] == $item['parent']) ? true : false);
+               $item_writeable = (($item['writable'] || $item['self']) ? true : false);
+               $show_comment_box = ((($page_writeable) && ($item_writeable)) ? true : false);
+               $lock = ((($item['private'] == 1) || (($item['uid'] == local_user()) && (strlen($item['allow_cid']) || strlen($item['allow_gid']) 
+                       || strlen($item['deny_cid']) || strlen($item['deny_gid']))))
+                       ? t('Private Message')
+                       : false);
+               $redirect_url = $a->get_baseurl($ssl_state) . '/redir/' . $item['cid'] ;
+               $shareable = ((($profile_owner == local_user()) && ($item['private'] != 1)) ? true : false);
+               if(local_user() && link_compare($a->contact['url'],$item['author-link']))
+                       $edpost = array($a->get_baseurl($ssl_state)."/editpost/".$item['id'], t("Edit"));
+               else
+                       $edpost = false;
+               if((intval($item['contact-id']) && $item['contact-id'] == remote_user()) || ($item['uid'] == local_user()))
+                       $dropping = true;
+
+               $drop = array(
+                       'dropping' => $dropping,
+                       'select' => t('Select'), 
+                       'delete' => t('Delete'),
+               );
+               
+               $filer = (($profile_owner == local_user()) ? t("save to folder") : false);
+
+               $diff_author    = ((link_compare($item['url'],$item['author-link'])) ? false : true);
+               $profile_name   = (((strlen($item['author-name']))   && $diff_author) ? $item['author-name']   : $item['name']);
+               if($item['author-link'] && (! $item['author-name']))
+                       $profile_name = $item['author-link'];
+
+               $sp = false;
+               $profile_link = best_link_url($item,$sp);
+               if($profile_link === 'mailbox')
+                       $profile_link = '';
+               if($sp)
+                       $sparkle = ' sparkle';
+               else
+                       $profile_link = zrl($profile_link);                                     
+
+               $normalised = normalise_link((strlen($item['author-link'])) ? $item['author-link'] : $item['url']);
+               if(($normalised != 'mailbox') && (x($a->contacts,$normalised)))
+                       $profile_avatar = $a->contacts[$normalised]['thumb'];
+               else
+                       $profile_avatar = (((strlen($item['author-avatar'])) && $diff_author) ? $item['author-avatar'] : $a->get_cached_avatar_image($thumb));
+
+               $locate = array('location' => $item['location'], 'coord' => $item['coord'], 'html' => '');
+               call_hooks('render_location',$locate);
+               $location = ((strlen($locate['html'])) ? $locate['html'] : render_location_google($locate));
+
+               $tags=array();
+               foreach(explode(',',$item['tag']) as $tag){
+                       $tag = trim($tag);
+                       if ($tag!="") $tags[] = bbcode($tag);
+               }
+
+               $like    = ((x($alike,$item['uri'])) ? format_like($alike[$item['uri']],$alike[$item['uri'] . '-l'],'like',$item['uri']) : '');
+               $dislike = ((x($dlike,$item['uri'])) ? format_like($dlike[$item['uri']],$dlike[$item['uri'] . '-l'],'dislike',$item['uri']) : '');
+
+               if($toplevelpost) {
+                       if((! $item['self']) && ($mode !== 'profile')) {
+                               if($item['wall']) {
+
+                                       // On the network page, I am the owner. On the display page it will be the profile owner.
+                                       // This will have been stored in $a->page_contact by our calling page.
+                                       // Put this person as the wall owner of the wall-to-wall notice.
+
+                                       $owner_url = zrl($a->page_contact['url']);
+                                       $owner_photo = $a->page_contact['thumb'];
+                                       $owner_name = $a->page_contact['name'];
+                                       $template = $wallwall_template;
+                                       $commentww = 'ww';      
+                               }
+                               else if($item['owner-link']) {
+
+                                       $owner_linkmatch = (($item['owner-link']) && link_compare($item['owner-link'],$item['author-link']));
+                                       $alias_linkmatch = (($item['alias']) && link_compare($item['alias'],$item['author-link']));
+                                       $owner_namematch = (($item['owner-name']) && $item['owner-name'] == $item['author-name']);
+                                       if((! $owner_linkmatch) && (! $alias_linkmatch) && (! $owner_namematch)) {
+
+                                               // The author url doesn't match the owner (typically the contact)
+                                               // and also doesn't match the contact alias. 
+                                               // The name match is a hack to catch several weird cases where URLs are 
+                                               // all over the park. It can be tricked, but this prevents you from
+                                               // seeing "Bob Smith to Bob Smith via Wall-to-wall" and you know darn
+                                               // well that it's the same Bob Smith. 
+
+                                               // But it could be somebody else with the same name. It just isn't highly likely. 
+                                       
+
+                                               $owner_url = $item['owner-link'];
+                                               $owner_photo = $item['owner-avatar'];
+                                               $owner_name = $item['owner-name'];
+                                               $template = $wallwall_template;
+                                               $commentww = 'ww';
+                                               // If it is our contact, use a friendly redirect link
+                                               if((link_compare($item['owner-link'],$item['url'])) 
+                                                       && ($item['network'] === NETWORK_DFRN)) {
+                                                       $owner_url = $redirect_url;
+                                                       $osparkle = ' sparkle';
+                                               }
+                                               else
+                                                       $owner_url = zrl($owner_url);
+                                       }
+                               }
+                       }
+                       if($profile_owner == local_user()) {
+                               $isstarred = (($item['starred']) ? "starred" : "unstarred");
+
+                               $star = array(
+                                       'do' => t("add star"),
+                                       'undo' => t("remove star"),
+                                       'toggle' => t("toggle star status"),
+                                       'classdo' => (($item['starred']) ? "hidden" : ""),
+                                       'classundo' => (($item['starred']) ? "" : "hidden"),
+                                       'starred' =>  t('starred'),
+                                       'tagger' => t("add tag"),
+                                       'classtagger' => "",
+                               );
+                       }
+               } else {
+                       $indent = 'comment';
+                       // Collapse comments
+                       if(($nb_items > 2) || ($thread_level > 2)) {
+                               if($items_seen == 1) {
+                                       $firstcollapsed = true;
+                               }
+                               if($thread_level > 2) {
+                                       if($items_seen == $nb_items)
+                                               $lastcollapsed = true;
+                               }
+                               else if($items_seen == ($nb_items - 2)) {
+                                       $lastcollapsed = true;
+                               }
+                       }
+               }
+
+               if(intval(get_config('system','thread_allow')) && $a->theme_thread_allow) {
+                       $comments_threaded = true;
+               }
+               else {
+                       $comments_threaded = false;
+               }
+
+               if($page_writeable) {
+                       $buttons = array(
+                               'like' => array( t("I like this \x28toggle\x29"), t("like")),
+                               'dislike' => array( t("I don't like this \x28toggle\x29"), t("dislike")),
+                       );
+                       if ($shareable) $buttons['share'] = array( t('Share this'), t('share'));
+
+
+                       if($show_comment_box) {
+                               $qc = $qcomment =  null;
+
+                               if(in_array('qcomment',$a->plugins)) {
+                                       $qc = ((local_user()) ? get_pconfig(local_user(),'qcomment','words') : null);
+                                       $qcomment = (($qc) ? explode("\n",$qc) : null);
+                               }
+                               $comment = replace_macros($cmnt_tpl,array(
+                                       '$return_path' => '',
+                                       '$threaded' => $comments_threaded, 
+                                       '$jsreload' => (($mode === 'display') ? $_SESSION['return_url'] : ''),
+                                       '$type' => (($mode === 'profile') ? 'wall-comment' : 'net-comment'),
+                                       '$id' => $item['item_id'],
+                                       '$parent' => $item['item_id'],
+                                       '$qcomment' => $qcomment,
+                                       '$profile_uid' =>  $profile_owner,
+                                       '$mylink' => $a->contact['url'],
+                                       '$mytitle' => t('This is you'),
+                                       '$myphoto' => $a->contact['thumb'],
+                                       '$comment' => t('Comment'),
+                                       '$submit' => t('Submit'),
+                                       '$edbold' => t('Bold'),
+                                       '$editalic' => t('Italic'),
+                                       '$eduline' => t('Underline'),
+                                       '$edquote' => t('Quote'),
+                                       '$edcode' => t('Code'),
+                                       '$edimg' => t('Image'),
+                                       '$edurl' => t('Link'),
+                                       '$edvideo' => t('Video'),
+                                       '$preview' => t('Preview'),
+                                       '$indent' => $indent,
+                                       '$sourceapp' => t($a->sourcename),
+                                       '$ww' => (($mode === 'network') ? $commentww : '')
+                               ));
+                       }
+               }
+
+               if(strcmp(datetime_convert('UTC','UTC',$item['created']),datetime_convert('UTC','UTC','now - 12 hours')) > 0)
+                       $indent .= ' shiny';
+
+               localize_item($item);
+
+               $body = prepare_body($item,true);
+
+               $tmp_item = array(
+                       // collapse comments in template. I don't like this much...
+                       'comment_firstcollapsed' => $firstcollapsed,
+                       'comment_lastcollapsed' => $lastcollapsed,
+                       // template to use to render item (wall, walltowall, search)
+                       'template' => $template,
+                       
+                       'type' => implode("",array_slice(explode("/",$item['verb']),-1)),
+                       'tags' => $tags,
+                       'body' => template_escape($body),
+                       'text' => strip_tags(template_escape($body)),
+                       'id' => $item['item_id'],
+                       'linktitle' => sprintf( t('View %s\'s profile @ %s'), $profile_name, ((strlen($item['author-link'])) ? $item['author-link'] : $item['url'])),
+                       'olinktitle' => sprintf( t('View %s\'s profile @ %s'), $owner_name, ((strlen($item['owner-link'])) ? $item['owner-link'] : $item['url'])),
+                       'to' => t('to'),
+                       'wall' => t('Wall-to-Wall'),
+                       'vwall' => t('via Wall-To-Wall:'),
+                       'profile_url' => $profile_link,
+                       'item_photo_menu' => item_photo_menu($item),
+                       'name' => template_escape($profile_name),
+                       'thumb' => $profile_avatar,
+                       'osparkle' => $osparkle,
+                       'sparkle' => $sparkle,
+                       'title' => template_escape($item['title']),
+                       'localtime' => datetime_convert('UTC', date_default_timezone_get(), $item['created'], 'r'),
+
+                       'ago' => (($item['app']) ? sprintf( t('%s from %s'),relative_date($item['created']),$item['app']) : relative_date($item['created'])),
+                       'lock' => $lock,
+                       'location' => template_escape($location),
+                       'indent' => $indent,
+                       'owner_url' => $owner_url,
+                       'owner_photo' => $owner_photo,
+                       'owner_name' => template_escape($owner_name),
+                       'plink' => get_plink($item),
+                       'edpost' => $edpost,
+                       'isstarred' => $isstarred,
+                       'star' => $star,
+                       'filer' => $filer,
+                       'drop' => $drop,
+                       'vote' => $buttons,
+                       'like' => $like,
+                       'dislike' => $dislike,
+                       'comment' => $comment,
+                       'previewing' => $previewing,
+                       'wait' => t('Please wait'),
+                       'thread_level' => $thread_level,
+               );
+
+               $arr = array('item' => $item, 'output' => $tmp_item);
+               call_hooks('display_item', $arr);
+
+               $item_result = $arr['output'];
+               if($firstcollapsed) {
+                       $item_result['num_comments'] = sprintf( tt('%d comment','%d comments',$total_children),$total_children );
+                       $item_result['hide_text'] = t('show more');
+               }
+
+               $item_result['children'] = array();
+               if(count($item['children'])) {
+                       $item_result['children'] = prepare_threads_body($a, $item['children'], $cmnt_tpl, $page_writeable, $mode, $profile_owner, $alike, $dlike, ($thread_level + 1));
+               }
+               $item_result['private'] = $item['private'];
+               $item_result['toplevel'] = ($toplevelpost ? 'toplevel_item' : '');
+
+               /*
+                * I don't like this very much...
+                */
+               if(get_config('system','thread_allow') && $a->theme_thread_allow) {
+                       $item_result['flatten'] = false;
+                       $item_result['threaded'] = true;
+               }
+               else {
+                       $item_result['flatten'] = true;
+                       $item_result['threaded'] = false;
+                       if(!$toplevelpost) {
+                               $item_result['comment'] = false;
+                       }
+               }
+               
+               $result[] = $item_result;
+       }
+
+       return $result;
+}
+
 /**
  * "Render" a conversation or list of items for HTML display.
  * There are two major forms of display:
@@ -348,6 +726,9 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                $page_writeable = false;
        }
 
+       $page_dropping = ((local_user() && local_user() == $profile_owner) ? true : false);
+
+
        if($update)
                $return_url = $_SESSION['return_url'];
        else
@@ -372,7 +753,9 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
        // array with html for each thread (parent+comments)
        $threads = array();
        $threadsid = -1;
-       
+
+       $page_template = get_markup_template("conversation.tpl");
+               
        if($items && count($items)) {
 
                if($mode === 'network-new' || $mode === 'search' || $mode === 'community') {
@@ -467,6 +850,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                                        'title' => template_escape($item['title']),
                                        'body' => template_escape($body),
                                        'text' => strip_tags(template_escape($body)),
+                                       'localtime' => datetime_convert('UTC', date_default_timezone_get(), $item['created'], 'r'),
                                        'ago' => (($item['app']) ? sprintf( t('%s from %s'),relative_date($item['created']),$item['app']) : relative_date($item['created'])),
                                        'location' => template_escape($location),
                                        'indent' => '',
@@ -485,6 +869,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                                        'conv' => (($preview) ? '' : array('href'=> $a->get_baseurl($ssl_state) . '/display/' . $nickname . '/' . $item['id'], 'title'=> t('View in context'))),
                                        'previewing' => $previewing,
                                        'wait' => t('Please wait'),
+                                       'thread_level' => 1,
                                );
 
                                $arr = array('item' => $item, 'output' => $tmp_item);
@@ -499,371 +884,33 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                else
                {
                        // Normal View
+                       $page_template = get_markup_template("threaded_conversation.tpl");
 
+                       // get all the topmost parents
+                       // this shouldn't be needed, as we should have only them in ou array
+                       // But for now, this array respects the old style, just in case
 
-                       // Figure out how many comments each parent has
-                       // (Comments all have gravity of 6)
-                       // Store the result in the $comments array
-
-                       $comments = array();
+                       $threads = array();
                        foreach($items as $item) {
-                               if((intval($item['gravity']) == 6) && ($item['id'] != $item['parent'])) {
-                                       if(! x($comments,$item['parent']))
-                                               $comments[$item['parent']] = 1;
-                                       else
-                                               $comments[$item['parent']] += 1;
-                               } elseif(! x($comments,$item['parent'])) 
-                                       $comments[$item['parent']] = 0; // avoid notices later on
-                       }
-
-                       // map all the like/dislike activities for each parent item 
-                       // Store these in the $alike and $dlike arrays
 
-                       foreach($items as $item) {
                                like_puller($a,$item,$alike,'like');
                                like_puller($a,$item,$dlike,'dislike');
-                       }
-
-                       $comments_collapsed = false;
-                       $comments_seen = 0;
-                       $comment_lastcollapsed = false;
-                       $comment_firstcollapsed = false;
-                       $blowhard = 0;
-                       $blowhard_count = 0;
-
-
-                       foreach($items as $item) {
-
-                               $comment = '';
-                               $template = $tpl;
-                               $commentww = '';
-                               $sparkle = '';
-                               $owner_url = $owner_photo = $owner_name = '';
-
-                               // We've already parsed out like/dislike for special treatment. We can ignore them now
-
-                               if(((activity_match($item['verb'],ACTIVITY_LIKE)) 
-                                       || (activity_match($item['verb'],ACTIVITY_DISLIKE))) 
-                                       && ($item['id'] != $item['parent']))
-                                       continue;
-
-                               $toplevelpost = (($item['id'] == $item['parent']) ? true : 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.
-                       
-                               if($toplevelpost) {
-
-                                       $item_writeable = (($item['writable'] || $item['self']) ? true : false);
-
-                                       $comments_seen = 0;
-                                       $comments_collapsed = false;
-                                       $comment_lastcollapsed  = false;
-                                       $comment_firstcollapsed = false;
-                                       
-                                       $threadsid++;
-                                       $threads[$threadsid]['id'] = $item['item_id'];
-                                       $threads[$threadsid]['private'] = $item['private'];
-                                       $threads[$threadsid]['items'] = array();
 
+                               if($item['id'] == $item['parent']) {
+                                       $threads[] = $item;
                                }
-                               else {
-
-                                       // prevent private email reply to public conversation from leaking.
-                                       if($item['network'] === NETWORK_MAIL && local_user() != $item['uid'])
-                                                       continue;
-
-                                       $comments_seen ++;
-                                       $comment_lastcollapsed  = false;
-                                       $comment_firstcollapsed = false;
-                               }       
-
-                               $override_comment_box = ((($page_writeable) && ($item_writeable)) ? true : false);
-                               $show_comment_box = ((($page_writeable) && ($item_writeable) && ($comments_seen == $comments[$item['parent']])) ? true : false);
-
-
-                               if(($comments[$item['parent']] > 2) && ($comments_seen <= ($comments[$item['parent']] - 2)) && ($item['gravity'] == 6)) {
-
-                                       if (!$comments_collapsed){
-                                               $threads[$threadsid]['num_comments'] = sprintf( tt('%d comment','%d comments',$comments[$item['parent']]),$comments[$item['parent']] );
-                                               $threads[$threadsid]['hide_text'] = t('show more');
-                                               $comments_collapsed = true;
-                                               $comment_firstcollapsed = true;
-                                       }
-                               }
-                               if(($comments[$item['parent']] > 2) && ($comments_seen == ($comments[$item['parent']] - 1))) {
-
-                                       $comment_lastcollapsed = true;
-                               }
-
-                               $redirect_url = $a->get_baseurl($ssl_state) . '/redir/' . $item['cid'] ;
-
-                               $lock = ((($item['private'] == 1) || (($item['uid'] == local_user()) && (strlen($item['allow_cid']) || strlen($item['allow_gid']) 
-                                       || strlen($item['deny_cid']) || strlen($item['deny_gid']))))
-                                       ? t('Private Message')
-                                       : false);
-
-
-                               // Top-level wall post not written by the wall owner (wall-to-wall)
-                               // First figure out who owns it. 
-
-                               $osparkle = '';
-
-                               if(($toplevelpost) && (! $item['self']) && ($mode !== 'profile')) {
-
-                                       if($item['wall']) {
-
-                                               // On the network page, I am the owner. On the display page it will be the profile owner.
-                                               // This will have been stored in $a->page_contact by our calling page.
-                                               // Put this person as the wall owner of the wall-to-wall notice.
-
-                                               $owner_url = zrl($a->page_contact['url']);
-                                               $owner_photo = $a->page_contact['thumb'];
-                                               $owner_name = $a->page_contact['name'];
-                                               $template = $wallwall;
-                                               $commentww = 'ww';      
-                                       }
-
-                                       if((! $item['wall']) && $item['owner-link']) {
-
-                                               $owner_linkmatch = (($item['owner-link']) && link_compare($item['owner-link'],$item['author-link']));
-                                               $alias_linkmatch = (($item['alias']) && link_compare($item['alias'],$item['author-link']));
-                                               $owner_namematch = (($item['owner-name']) && $item['owner-name'] == $item['author-name']);
-                                               if((! $owner_linkmatch) && (! $alias_linkmatch) && (! $owner_namematch)) {
-
-                                                       // The author url doesn't match the owner (typically the contact)
-                                                       // and also doesn't match the contact alias. 
-                                                       // The name match is a hack to catch several weird cases where URLs are 
-                                                       // all over the park. It can be tricked, but this prevents you from
-                                                       // seeing "Bob Smith to Bob Smith via Wall-to-wall" and you know darn
-                                                       // well that it's the same Bob Smith. 
-
-                                                       // But it could be somebody else with the same name. It just isn't highly likely. 
-                                                       
-
-                                                       $owner_url = $item['owner-link'];
-                                                       $owner_photo = $item['owner-avatar'];
-                                                       $owner_name = $item['owner-name'];
-                                                       $template = $wallwall;
-                                                       $commentww = 'ww';
-                                                       // If it is our contact, use a friendly redirect link
-                                                       if((link_compare($item['owner-link'],$item['url'])) 
-                                                               && ($item['network'] === NETWORK_DFRN)) {
-                                                               $owner_url = $redirect_url;
-                                                               $osparkle = ' sparkle';
-                                                       }
-                                                       else
-                                                               $owner_url = zrl($owner_url);
-                                               }
-                                       }
-                               }
-
-                               $likebuttons = '';
-                               $shareable = ((($profile_owner == local_user()) && ($item['private'] != 1)) ? true : false); 
-
-                               if($page_writeable) {
-/*                                     if($toplevelpost) {  */
-                                               $likebuttons = array(
-                                                       'like' => array( t("I like this \x28toggle\x29"), t("like")),
-                                                       'dislike' => array( t("I don't like this \x28toggle\x29"), t("dislike")),
-                                               );
-                                               if ($shareable) $likebuttons['share'] = array( t('Share this'), t('share'));
-/*                                     } */
-
-                                       $qc = $qcomment =  null;
-
-                                       if(in_array('qcomment',$a->plugins)) {
-                                               $qc = ((local_user()) ? get_pconfig(local_user(),'qcomment','words') : null);
-                                               $qcomment = (($qc) ? explode("\n",$qc) : null);
-                                       }
-
-                                       if(($show_comment_box) || (($show_comment_box == false) && ($override_comment_box == false) && ($item['last-child']))) {
-                                               $comment = replace_macros($cmnt_tpl,array(
-                                                       '$return_path' => '', 
-                                                       '$jsreload' => (($mode === 'display') ? $_SESSION['return_url'] : ''),
-                                                       '$type' => (($mode === 'profile') ? 'wall-comment' : 'net-comment'),
-                                                       '$id' => $item['item_id'],
-                                                       '$parent' => $item['parent'],
-                                                       '$qcomment' => $qcomment,
-                                                       '$profile_uid' =>  $profile_owner,
-                                                       '$mylink' => $a->contact['url'],
-                                                       '$mytitle' => t('This is you'),
-                                                       '$myphoto' => $a->contact['thumb'],
-                                                       '$comment' => t('Comment'),
-                                                       '$submit' => t('Submit'),
-                                                       '$edbold' => t('Bold'),
-                                                       '$editalic' => t('Italic'),
-                                                       '$eduline' => t('Underline'),
-                                                       '$edquote' => t('Quote'),
-                                                       '$edcode' => t('Code'),
-                                                       '$edimg' => t('Image'),
-                                                       '$edurl' => t('Link'),
-                                                       '$edvideo' => t('Video'),
-                                                       '$preview' => t('Preview'),
-                                                       '$ww' => (($mode === 'network') ? $commentww : '')
-                                               ));
-                                       }
-                               }
-
-                               if(local_user() && link_compare($a->contact['url'],$item['author-link']))
-                                       $edpost = array($a->get_baseurl($ssl_state)."/editpost/".$item['id'], t("Edit"));
-                               else
-                                       $edpost = false;
-
-                               $drop = '';
-                               $dropping = false;
-
-                               if((intval($item['contact-id']) && $item['contact-id'] == remote_user()) || ($item['uid'] == local_user()))
-                                       $dropping = true;
-
-                               $drop = array(
-                                       'dropping' => $dropping,
-                                       'select' => t('Select'), 
-                                       'delete' => t('Delete'),
-                               );
-
-                               $star = false;
-                               $filer = false;
-
-                               $isstarred = "unstarred";
-                               if ($profile_owner == local_user()) {
-                                       if($toplevelpost) {
-                                               $isstarred = (($item['starred']) ? "starred" : "unstarred");
-
-                                               $star = array(
-                                                       'do' => t("add star"),
-                                                       'undo' => t("remove star"),
-                                                       'toggle' => t("toggle star status"),
-                                                       'classdo' => (($item['starred']) ? "hidden" : ""),
-                                                       'classundo' => (($item['starred']) ? "" : "hidden"),
-                                                       'starred' =>  t('starred'),
-                                                       'tagger' => t("add tag"),
-                                                       'classtagger' => "",
-                                               );
-                                       }
-                                       $filer = t("save to folder");
-                               }
-
-
-                               $photo = $item['photo'];
-                               $thumb = $item['thumb'];
-
-                               // Post was remotely authored.
-
-                               $diff_author    = ((link_compare($item['url'],$item['author-link'])) ? false : true);
-
-                               $profile_name   = (((strlen($item['author-name']))   && $diff_author) ? $item['author-name']   : $item['name']);
-
-                               if($item['author-link'] && (! $item['author-name']))
-                                       $profile_name = $item['author-link'];
-
-                               $sp = false;
-                               $profile_link = best_link_url($item,$sp);
-                               if($profile_link === 'mailbox')
-                                       $profile_link = '';
-                               if($sp)
-                                       $sparkle = ' sparkle';
-                               else
-                                       $profile_link = zrl($profile_link);                                     
-
-                               $normalised = normalise_link((strlen($item['author-link'])) ? $item['author-link'] : $item['url']);
-                               if(($normalised != 'mailbox') && (x($a->contacts,$normalised)))
-                                       $profile_avatar = $a->contacts[$normalised]['thumb'];
-                               else
-                                       $profile_avatar = (((strlen($item['author-avatar'])) && $diff_author) ? $item['author-avatar'] : $a->get_cached_avatar_image($thumb));
-
-                               $like    = ((x($alike,$item['uri'])) ? format_like($alike[$item['uri']],$alike[$item['uri'] . '-l'],'like',$item['uri']) : '');
-                               $dislike = ((x($dlike,$item['uri'])) ? format_like($dlike[$item['uri']],$dlike[$item['uri'] . '-l'],'dislike',$item['uri']) : '');
-
-                               $locate = array('location' => $item['location'], 'coord' => $item['coord'], 'html' => '');
-                               call_hooks('render_location',$locate);
-
-                               $location = ((strlen($locate['html'])) ? $locate['html'] : render_location_google($locate));
-
-                               $indent = (($toplevelpost) ? '' : ' comment');
-
-                               if(strcmp(datetime_convert('UTC','UTC',$item['created']),datetime_convert('UTC','UTC','now - 12 hours')) > 0)
-                                       $indent .= ' shiny'; 
-
-                               // 
-                               localize_item($item);
-
-
-                               $tags=array();
-                               foreach(explode(',',$item['tag']) as $tag){
-                                       $tag = trim($tag);
-                                       if ($tag!="") $tags[] = bbcode($tag);
-                               }
-
-                               // Build the HTML
-
-                               $body = prepare_body($item,true);
-                               //$tmp_item = replace_macros($template,
-                               $tmp_item = array(
-                                       // collapse comments in template. I don't like this much...
-                                       'comment_firstcollapsed' => $comment_firstcollapsed,
-                                       'comment_lastcollapsed' => $comment_lastcollapsed,
-                                       // template to use to render item (wall, walltowall, search)
-                                       'template' => $template,
-                                       
-                                       'type' => implode("",array_slice(explode("/",$item['verb']),-1)),
-                                       'tags' => $tags,
-                                       'body' => template_escape($body),
-                                       'text' => strip_tags(template_escape($body)),
-                                       'id' => $item['item_id'],
-                                       'linktitle' => sprintf( t('View %s\'s profile @ %s'), $profile_name, ((strlen($item['author-link'])) ? $item['author-link'] : $item['url'])),
-                                       'olinktitle' => sprintf( t('View %s\'s profile @ %s'), $owner-name, ((strlen($item['owner-link'])) ? $item['owner-link'] : $item['url'])),
-                                       'to' => t('to'),
-                                       'wall' => t('Wall-to-Wall'),
-                                       'vwall' => t('via Wall-To-Wall:'),
-                                       'profile_url' => $profile_link,
-                                       'item_photo_menu' => item_photo_menu($item),
-                                       'name' => template_escape($profile_name),
-                                       'thumb' => $profile_avatar,
-                                       'osparkle' => $osparkle,
-                                       'sparkle' => $sparkle,
-                                       'title' => template_escape($item['title']),
-                                       'ago' => (($item['app']) ? sprintf( t('%s from %s'),relative_date($item['created']),$item['app']) : relative_date($item['created'])),
-                                       'lock' => $lock,
-                                       'location' => template_escape($location),
-                                       'indent' => $indent,
-                                       'owner_url' => $owner_url,
-                                       'owner_photo' => $owner_photo,
-                                       'owner_name' => template_escape($owner_name),
-                                       'plink' => get_plink($item),
-                                       'edpost' => $edpost,
-                                       'isstarred' => $isstarred,
-                                       'star' => $star,
-                                       'filer' => $filer,
-                                       'drop' => $drop,
-                                       'vote' => $likebuttons,
-                                       'like' => $like,
-                                       'dislike' => $dislike,
-                                       'comment' => $comment,
-                                       'previewing' => $previewing,
-                                       'wait' => t('Please wait'),
-
-                               );
-
-
-                               $arr = array('item' => $item, 'output' => $tmp_item);
-                               call_hooks('display_item', $arr);
-
-                               $threads[$threadsid]['items'][] = $arr['output'];
                        }
+
+                       $threads = prepare_threads_body($a, $threads, $cmnt_tpl, $page_writeable, $mode,  $profile_owner, $alike, $dlike);
                }
        }
-
-       $page_template = get_markup_template("conversation.tpl");
+               
        $o = replace_macros($page_template, array(
                '$baseurl' => $a->get_baseurl($ssl_state),
                '$mode' => $mode,
                '$user' => $a->user,
                '$threads' => $threads,
-               '$dropping' => ($dropping?t('Delete Selected Items'):False),
+               '$dropping' => ($page_dropping?t('Delete Selected Items'):False),
        ));
 
        return $o;
@@ -1163,7 +1210,7 @@ function status_editor($a,$x, $notes_cid = 0, $popup=false) {
                '$bang' => $x['bang'],
                '$profile_uid' => $x['profile_uid'],
                '$preview' => t('Preview'),
-               '$mobileapp' => t('Friendica mobile web'),
+               '$sourceapp' => t($a->sourcename),
        ));
 
 
@@ -1176,12 +1223,55 @@ function status_editor($a,$x, $notes_cid = 0, $popup=false) {
 }
 
 
+function get_item_children($arr, $parent) {
+       $children = array();
+       foreach($arr as $item) {
+               if($item['id'] != $item['parent']) {
+                       if(get_config('system','thread_allow')) {
+                               // Fallback to parent-uri if thr-parent is not set
+                               $thr_parent = $item['thr-parent'];
+                               if($thr_parent == '')
+                                       $thr_parent = $item['parent-uri'];
+                               
+                               if($thr_parent == $parent['uri']) {
+                                       $item['children'] = get_item_children($arr, $item);
+                                       $children[] = $item;
+                               }
+                       }
+                       else if($item['parent'] == $parent['id']) {
+                               $children[] = $item;
+                       }
+               }
+       }
+       return $children;
+}
+
+function sort_item_children($items) {
+       $result = $items;
+       usort($result,'sort_thr_created_rev');
+       foreach($result as $k => $i) {
+               if(count($result[$k]['children'])) {
+                       $result[$k]['children'] = sort_item_children($result[$k]['children']);
+               }
+       }
+       return $result;
+}
+
+function add_children_to_list($children, &$arr) {
+       foreach($children as $y) {
+               $arr[] = $y;
+               if(count($y['children']))
+                       add_children_to_list($y['children'], $arr);
+       }
+}
+
 function conv_sort($arr,$order) {
 
        if((!(is_array($arr) && count($arr))))
                return array();
 
        $parents = array();
+       $children = array();
 
        foreach($arr as $x)
                if($x['id'] == $x['parent'])
@@ -1194,21 +1284,22 @@ function conv_sort($arr,$order) {
 
        if(count($parents))
                foreach($parents as $i=>$_x) 
-                       $parents[$i]['children'] = array();
+                       $parents[$i]['children'] = get_item_children($arr, $_x);
 
-       foreach($arr as $x) {
+       /*foreach($arr as $x) {
                if($x['id'] != $x['parent']) {
                        $p = find_thread_parent_index($parents,$x);
                        if($p !== false)
                                $parents[$p]['children'][] = $x;
                }
-       }
+       }*/
        if(count($parents)) {
                foreach($parents as $k => $v) {
                        if(count($parents[$k]['children'])) {
-                               $y = $parents[$k]['children'];
+                               $parents[$k]['children'] = sort_item_children($parents[$k]['children']);
+                               /*$y = $parents[$k]['children'];
                                usort($y,'sort_thr_created_rev');
-                               $parents[$k]['children'] = $y;
+                               $parents[$k]['children'] = $y;*/
                        }
                }       
        }
@@ -1218,8 +1309,9 @@ function conv_sort($arr,$order) {
                foreach($parents as $x) {
                        $ret[] = $x;
                        if(count($x['children']))
-                               foreach($x['children'] as $y)
-                                       $ret[] = $y;
+                               add_children_to_list($x['children'], $ret);
+                               /*foreach($x['children'] as $y)
+                                       $ret[] = $y;*/
                }
        }
 
index a23c11bd2161f947d50361602e6ce7601601d507..baee0420ba6439f907eb8d2bfbab417fa47b9249 100755 (executable)
@@ -102,6 +102,37 @@ function diaspora_dispatch($importer,$msg) {
        return $ret;
 }
 
+function diaspora_handle_from_contact($contact_id) {
+       $handle = False;
+
+       logger("diaspora_handle_from_contact: contact id is " . $contact_id, LOGGER_DEBUG);
+
+       $r = q("SELECT network, addr, self, url, nick FROM contact WHERE id = %d",
+              intval($contact_id)
+       );
+       if($r) {
+               $contact = $r[0];
+
+               logger("diaspora_handle_from_contact: contact 'self' = " . $contact['self'] . " 'url' = " . $contact['url'], LOGGER_DEBUG);
+
+               if($contact['network'] === NETWORK_DIASPORA) {
+                       $handle = $contact['addr'];
+
+//                     logger("diaspora_handle_from_contact: contact id is a Diaspora person, handle = " . $handle, LOGGER_DEBUG);
+               }
+               elseif(($contact['network'] === NETWORK_DFRN) || ($contact['self'] == 1)) {
+                       $baseurl_start = strpos($contact['url'],'://') + 3;
+                       $baseurl_length = strpos($contact['url'],'/profile') - $baseurl_start; // allows installations in a subdirectory--not sure how Diaspora will handle
+                       $baseurl = substr($contact['url'], $baseurl_start, $baseurl_length);
+                       $handle = $contact['nick'] . '@' . $baseurl;
+
+//                     logger("diaspora_handle_from_contact: contact id is a DFRN person, handle = " . $handle, LOGGER_DEBUG);
+               }
+       }
+
+       return $handle;
+}
+
 function diaspora_get_contact_by_handle($uid,$handle) {
        $r = q("SELECT * FROM `contact` WHERE `network` = '%s' AND `uid` = %d AND `addr` = '%s' LIMIT 1",
                dbesc(NETWORK_DIASPORA),
@@ -1282,7 +1313,7 @@ function diaspora_comment($importer,$xml,$msg) {
                // the existence of parent_author_signature means the parent_author or owner
                // is already relaying.
 
-               proc_run('php','include/notifier.php','comment',$message_id);
+               proc_run('php','include/notifier.php','comment-import',$message_id);
        }
 
        $myconv = q("SELECT `author-link`, `author-avatar`, `parent` FROM `item` WHERE `parent-uri` = '%s' AND `uid` = %d AND `parent` != 0 AND `deleted` = 0 ",
@@ -1319,7 +1350,7 @@ function diaspora_comment($importer,$xml,$msg) {
                                'verb'         => ACTIVITY_POST,
                                'otype'        => 'item',
                                'parent'       => $conv_parent,
-
+                               'parent_uri'   => $parent_uri
                        ));
 
                        // only send one notification
@@ -1867,7 +1898,7 @@ EOT;
        // is already relaying. The parent_item['origin'] indicates the message was created on our system
 
        if(($parent_item['origin']) && (! $parent_author_signature))
-               proc_run('php','include/notifier.php','comment',$message_id);
+               proc_run('php','include/notifier.php','comment-import',$message_id);
 
        return;
 }
@@ -1993,7 +2024,7 @@ function diaspora_signed_retraction($importer,$xml,$msg) {
                                                // is already relaying.
                                                logger('diaspora_signed_retraction: relaying relayable_retraction');
 
-                                               proc_run('php','include/notifier.php','relayable_retraction',$r[0]['id']);
+                                               proc_run('php','include/notifier.php','drop',$r[0]['id']);
                                        }
                                }
                        }
@@ -2153,12 +2184,6 @@ function diaspora_send_status($item,$owner,$contact,$public_batch = false) {
                }
        }
 */
-       /**
-        * Transform #tags, strip off the [url] and replace spaces with underscore
-        */
-       $body = preg_replace_callback('/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', create_function('$match',
-               'return \'#\'. str_replace(\' \', \'_\', $match[2]);'
-       ), $body);
 
        //if(strlen($title))
        //      $body = "[b]".html_entity_decode($title)."[/b]\n\n".$body;
@@ -2257,12 +2282,13 @@ function diaspora_send_followup($item,$owner,$contact,$public_batch = false) {
        $myaddr = $owner['nickname'] . '@' .  substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3);
 //     $theiraddr = $contact['addr'];
 
-       if($item['thr-parent']) {
+       // Diaspora doesn't support threaded comments
+       /*if($item['thr-parent']) {
                $p = q("select guid, type, uri, `parent-uri` from item where uri = '%s' limit 1",
                        dbesc($item['thr-parent'])
                      );
        }
-       else {
+       else {*/
                // The first item in the `item` table with the parent id is the parent. However, MySQL doesn't always
                // return the items ordered by `item`.`id`, in which case the wrong item is chosen as the parent.
                // The only item with `parent` and `id` as the parent id is the parent item.
@@ -2270,7 +2296,7 @@ function diaspora_send_followup($item,$owner,$contact,$public_batch = false) {
                        intval($item['parent']),
                        intval($item['parent'])
                );
-       }
+       //}
        if(count($p))
                $parent = $p[0];
        else
@@ -2332,21 +2358,21 @@ function diaspora_send_relay($item,$owner,$contact,$public_batch = false) {
        $body = $item['body'];
        $text = html_entity_decode(bb2diaspora($body));
 
-
-       if($item['thr-parent']) {
+       // Diaspora doesn't support threaded comments
+       /*if($item['thr-parent']) {
                $p = q("select guid, type, uri, `parent-uri` from item where uri = '%s' limit 1",
                        dbesc($item['thr-parent'])
                      );
        }
-       else {
+       else {*/
                // The first item in the `item` table with the parent id is the parent. However, MySQL doesn't always
                // return the items ordered by `item`.`id`, in which case the wrong item is chosen as the parent.
                // The only item with `parent` and `id` as the parent id is the parent item.
                $p = q("select guid, type, uri, `parent-uri` from item where parent = %d and id = %d limit 1",
-                       intval($item['parent']),
-                       intval($item['parent'])
+                      intval($item['parent']),
+                      intval($item['parent'])
                      );
-       }
+       //}
        if(count($p))
                $parent = $p[0];
        else
@@ -2367,7 +2393,6 @@ function diaspora_send_relay($item,$owner,$contact,$public_batch = false) {
                $like = true;
 
                $target_type = ( $parent['uri'] === $parent['parent-uri']  ? 'Post' : 'Comment');
-//             $target_type = (strpos($parent['type'], 'comment') ? 'Comment' : 'Post');
 //             $positive = (($item['deleted']) ? 'false' : 'true');
                $positive = 'true';
 
@@ -2381,7 +2406,7 @@ function diaspora_send_relay($item,$owner,$contact,$public_batch = false) {
        // fetch the original signature if the relayable was created by a Diaspora
        // or DFRN user. Relayables for other networks are not supported.
 
-       $r = q("select * from sign where " . $sql_sign_id . " = %d limit 1",
+/*     $r = q("select * from sign where " . $sql_sign_id . " = %d limit 1",
                intval($item['id'])
        );
        if(count($r)) { 
@@ -2397,7 +2422,25 @@ function diaspora_send_relay($item,$owner,$contact,$public_batch = false) {
                // function is called
                logger('diaspora_send_relay: original author signature not found, cannot send relayable');
                return;
-       }
+       }*/
+
+       /* Since the author signature is only checked by the parent, not by the relay recipients,
+        * I think it may not be necessary for us to do so much work to preserve all the original
+        * signatures. The important thing that Diaspora DOES need is the original creator's handle.
+        * Let's just generate that and forget about all the original author signature stuff.
+        *
+        * Note: this might be more of an problem if we want to support likes on comments for older
+        * versions of Diaspora (diaspora-pistos), but since there are a number of problems with
+        * doing that, let's ignore it for now.
+        *
+        * Currently, only DFRN contacts are supported. StatusNet shouldn't be hard, but it hasn't
+        * been done yet
+        */
+
+       $handle = diaspora_handle_from_contact($item['contact-id']);
+       if(! $handle)
+               return;
+
 
        if($relay_retract)
                $sender_signed_text = $item['guid'] . ';' . $target_type;
index 51099147623dfafe89ee539394ab8d775d73235d..b4331f0926679a871249e83cdba43c4f5fdb5ed2 100644 (file)
@@ -1,5 +1,7 @@
 <?php
 
+require_once('include/email.php');
+
 function notification($params) {
 
        logger('notification: entry', LOGGER_DEBUG);
@@ -324,7 +326,7 @@ function notification($params) {
                // 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: " . 
+                       logger("notify_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)",
@@ -495,6 +497,7 @@ class enotify {
                        $multipartMessageBody,                                                  // message body
                        $messageHeader                                                                  // message headers
                );
+               logger("notification: enotify::send header " . 'To: ' . $params['toEmail'] . "\n" . $messageHeader, LOGGER_DEBUG);
                logger("notification: enotify::send returns " . $res, LOGGER_DEBUG);
        }
 }
index 79fab8a65b3b76cc673b39d72d1e8e62f8de38f4..cbb4b5abcfa5a508048a967c3a514499ca074a9c 100755 (executable)
@@ -580,6 +580,7 @@ function get_atom_elements($feed,$item) {
                $res['body'] = escape_tags($res['body']);
        }
 
+
        // this tag is obsolete but we keep it for really old sites
 
        $allow = $item->get_item_tags(NAMESPACE_DFRN,'comment-allow');
@@ -930,6 +931,8 @@ function item_store($arr,$force_parent = false) {
        $arr['origin']        = ((x($arr,'origin'))        ? intval($arr['origin'])              : 0 );
        $arr['guid']          = ((x($arr,'guid'))          ? notags(trim($arr['guid']))          : get_guid());
 
+
+       $arr['thr-parent'] = $arr['parent-uri'];
        if($arr['parent-uri'] === $arr['uri']) {
                $parent_id = 0;
                $parent_deleted = 0;
@@ -955,7 +958,6 @@ function item_store($arr,$force_parent = false) {
                        // and re-attach to the conversation parent.
 
                        if($r[0]['uri'] != $r[0]['parent-uri']) {
-                               $arr['thr-parent'] = $arr['parent-uri'];
                                $arr['parent-uri'] = $r[0]['parent-uri'];
                                $z = q("SELECT * FROM `item` WHERE `uri` = '%s' AND `parent-uri` = '%s' AND `uid` = %d 
                                        ORDER BY `id` ASC LIMIT 1",
@@ -997,7 +999,6 @@ function item_store($arr,$force_parent = false) {
                        if($force_parent) {
                                logger('item_store: $force_parent=true, reply converted to top-level post.');
                                $parent_id = 0;
-                               $arr['thr-parent'] = $arr['parent-uri'];
                                $arr['parent-uri'] = $arr['uri'];
                                $arr['gravity'] = 0;
                        }
@@ -2141,7 +2142,7 @@ function local_delivery($importer,$data) {
                }
        }
 
-       if((is_array($contact)) && ($photo_timestamp) && (strlen($photo_url)) && ($photo_timestamp > $importer['avatar-date'])) {
+       if(($photo_timestamp) && (strlen($photo_url)) && ($photo_timestamp > $importer['avatar-date'])) {
                logger('local_delivery: Updating photo for ' . $importer['name']);
                require_once("Photo.php");
                $photo_failure = false;
@@ -2199,7 +2200,7 @@ function local_delivery($importer,$data) {
                }
        }
 
-       if((is_array($contact)) && ($name_updated) && (strlen($new_name)) && ($name_updated > $contact['name-date'])) {
+       if(($name_updated) && (strlen($new_name)) && ($name_updated > $importer['name-date'])) {
                $r = q("select * from contact where uid = %d and id = %d limit 1",
                        intval($importer['importer_uid']),
                        intval($importer['id'])
@@ -2464,6 +2465,7 @@ function local_delivery($importer,$data) {
 
                                        $is_a_remote_delete = false;
 
+                                       // POSSIBLE CLEANUP --> Why select so many fields when only forum_mode and wall are used?
                                        $r = q("select `item`.`id`, `item`.`uri`, `item`.`tag`, `item`.`forum_mode`,`item`.`origin`,`item`.`wall`, 
                                                `contact`.`name`, `contact`.`url`, `contact`.`thumb` from `item` 
                                                LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id` 
@@ -2477,7 +2479,7 @@ function local_delivery($importer,$data) {
                                                intval($importer['importer_uid'])
                                        );
                                        if($r && count($r))
-                                               $is_a_remote_delete = true;                     
+                                               $is_a_remote_delete = true;
 
                                        // Does this have the characteristics of a community or private group comment?
                                        // If it's a reply to a wall post on a community/prvgroup page it's a 
@@ -2782,12 +2784,14 @@ function local_delivery($importer,$data) {
                                $parent = 0;
 
                                if($posted_id) {
-                                       $r = q("SELECT `parent` FROM `item` WHERE `id` = %d AND `uid` = %d LIMIT 1",
+                                       $r = q("SELECT `parent`, `parent-uri` FROM `item` WHERE `id` = %d AND `uid` = %d LIMIT 1",
                                                intval($posted_id),
                                                intval($importer['importer_uid'])
                                        );
-                                       if(count($r))
+                                       if(count($r)) {
                                                $parent = $r[0]['parent'];
+                                               $parent_uri = $r[0]['parent-uri'];
+                                       }
                        
                                        if(! $is_like) {
                                                $r1 = q("UPDATE `item` SET `last-child` = 0, `changed` = '%s' WHERE `uid` = %d AND `parent` = %d",
@@ -2804,7 +2808,7 @@ function local_delivery($importer,$data) {
                                        }
 
                                        if($posted_id && $parent) {
-                               
+
                                                proc_run('php',"include/notifier.php","comment-import","$posted_id");
                                        
                                                if((! $is_like) && (! $importer['self'])) {
@@ -2827,7 +2831,7 @@ function local_delivery($importer,$data) {
                                                                'verb'         => ACTIVITY_POST,
                                                                'otype'        => 'item',
                                                                'parent'       => $parent,
-
+                                                               'parent_uri'   => $parent_uri,
                                                        ));
 
                                                }
@@ -2976,6 +2980,7 @@ function local_delivery($importer,$data) {
                                                                        'verb'         => ACTIVITY_POST,
                                                                        'otype'        => 'item',
                                                                        'parent'       => $conv_parent,
+                                                                       'parent_uri'   => $parent_uri
 
                                                                ));
 
@@ -3065,7 +3070,8 @@ function local_delivery($importer,$data) {
                        $datarray['uid'] = $importer['importer_uid'];
                        $datarray['contact-id'] = $importer['id'];
 
-                       if(! link_compare($datarray['owner-link'],$contact['url'])) {
+
+                       if(! link_compare($datarray['owner-link'],$importer['url'])) {
                                // The item owner info is not our contact. It's OK and is to be expected if this is a tgroup delivery, 
                                // but otherwise there's a possible data mixup on the sender's system.
                                // the tgroup delivery code called from item_store will correct it if it's a forum,
@@ -3334,7 +3340,6 @@ function atom_entry($item,$type,$author,$owner,$comment = false,$cid = 0) {
        else
                $body = $item['body'];
 
-
        $o = "\r\n\r\n<entry>\r\n";
 
        if(is_array($author))
@@ -3344,7 +3349,7 @@ function atom_entry($item,$type,$author,$owner,$comment = false,$cid = 0) {
        if(strlen($item['owner-name']))
                $o .= atom_author('dfrn:owner',$item['owner-name'],$item['owner-link'],80,80,$item['owner-avatar']);
 
-       if(($item['parent'] != $item['id']) || ($item['parent-uri'] !== $item['uri']) || ($item['thr-parent'])) {
+       if(($item['parent'] != $item['id']) || ($item['parent-uri'] !== $item['uri']) || (($item['thr-parent'] !== '') && ($item['thr-parent'] !== $item['uri']))) {
                $parent_item = (($item['thr-parent']) ? $item['thr-parent'] : $item['parent-uri']);
                $o .= '<thr:in-reply-to ref="' . xmlify($parent_item) . '" type="text/html" href="' .  xmlify($a->get_baseurl() . '/display/' . $owner['nickname'] . '/' . $item['parent']) . '" />' . "\r\n";
        }
@@ -3705,8 +3710,9 @@ function drop_item($id,$interactive = true) {
 
        // check if logged in user is either the author or owner of this item
 
-       if((local_user() == $item['uid']) || (remote_user() == $item['contact-id'])) {
+       if((local_user() == $item['uid']) || (remote_user() == $item['contact-id']) || (! $interactive)) {
 
+               logger('delete item: ' . $item['id'], LOGGER_DEBUG);
                // delete the item
 
                $r = q("UPDATE `item` SET `deleted` = 1, `title` = '', `body` = '', `edited` = '%s', `changed` = '%s' WHERE `id` = %d LIMIT 1",
index 0fff5c7cc9eea0993682da0810cc2748b4819e11..0e1a63792f5a04676cf3f23b00123c5cd7aad12b 100644 (file)
@@ -854,6 +854,10 @@ function scale_external_images($s, $include_link = true, $scale_replace = false)
                        }
                }
        }
+
+       // replace the special char encoding
+
+       $s = htmlspecialchars($s,ENT_QUOTES,'UTF-8');
        return $s;
 }
 
index f54efba31de8101bc5a658e0ece65eec7571651f..947818d597718e0ecc3f0346c938483a31177233 100644 (file)
@@ -18,6 +18,31 @@ require_once('include/html2plain.php');
  * us by hosting providers. 
  */
 
+/*
+ * The notifier is typically called with:
+ *
+ *             proc_run('php', "include/notifier.php", COMMAND, ITEM_ID);
+ *
+ * where COMMAND is one of the following:
+ *
+ *             activity                                (in diaspora.php, dfrn_confirm.php, profiles.php)
+ *             comment-import                  (in diaspora.php, items.php)
+ *             comment-new                             (in item.php)
+ *             drop                                    (in diaspora.php, items.php, photos.php)
+ *             edit_post                               (in item.php)
+ *             event                                   (in events.php)
+ *             expire                                  (in items.php)
+ *             like                                    (in like.php, poke.php)
+ *             mail                                    (in message.php)
+ *             suggest                                 (in fsuggest.php)
+ *             tag                                             (in photos.php, poke.php, tagger.php)
+ *             tgroup                                  (in items.php)
+ *             wall-new                                (in photos.php, item.php)
+ *
+ * and ITEM_ID is the id of the item in the database that needs to be sent to others.
+ */
+
+
 function notifier_run($argv, $argc){
        global $a, $db;
 
index a4452586eebb1cd79bd904fc81603ca8bab381a2..dbb96a67ca7e5aa9f14e9bfa7299ff77bf650e37 100755 (executable)
@@ -12,7 +12,9 @@ function oembed_replacecb($matches){
 
 function oembed_fetch_url($embedurl){
 
-       $txt = Cache::get($embedurl);
+       $a = get_app();
+
+       $txt = Cache::get($a->videowidth . $embedurl);
 
        // These media files should now be caught in bbcode.php
        // left here as a fallback in case this is called from another source
@@ -38,7 +40,7 @@ function oembed_fetch_url($embedurl){
                                        $entries = $xpath->query("//link[@type='application/json+oembed']");
                                        foreach($entries as $e){
                                                $href = $e->getAttributeNode("href")->nodeValue;
-                                               $txt = fetch_url($href . '&maxwidth=425');
+                                               $txt = fetch_url($href . '&maxwidth=' . $a->videowidth);
                                                break;
                                        }
                                }
@@ -47,7 +49,7 @@ function oembed_fetch_url($embedurl){
                
                if ($txt==false || $txt==""){
                        // try oohembed service
-                       $ourl = "http://oohembed.com/oohembed/?url=".urlencode($embedurl).'&maxwidth=425';  
+                       $ourl = "http://oohembed.com/oohembed/?url=".urlencode($embedurl).'&maxwidth=' . $a->videowidth;  
                        $txt = fetch_url($ourl);
                }
                
@@ -55,7 +57,7 @@ function oembed_fetch_url($embedurl){
                if ($txt[0]!="{") $txt='{"type":"error"}';
        
                //save in cache
-               Cache::set($embedurl,$txt);
+               Cache::set($a->videowidth . $embedurl,$txt);
 
        }
        
@@ -114,7 +116,7 @@ function oembed_format_object($j){
                if (isset($j->provider_name)) $ret.=" on ".$j->provider_name;
        } else {
                // add <a> for html2bbcode conversion
-               $ret .= "<a href='$embedurl' rel='oembed'/>";
+               $ret .= "<a href='$embedurl' rel='oembed'></a>";
        }
        $ret.="<br style='clear:left'></span>";
        return  mb_convert_encoding($ret, 'HTML-ENTITIES', mb_detect_encoding($ret));
index 8f6d6ea9858ee03fc9855e2c47811e1fd5aee31f..3eeb0ccaa8c1097f4104c2e6da579af58c77d46d 100644 (file)
@@ -8,7 +8,10 @@ function uninstall_plugin($plugin){
        q("DELETE FROM `addon` WHERE `name` = '%s' ",
                dbesc($plugin)
        );
-
+    
+       // define THISPLUGIN, make life easy to plugin devs :-)
+       define("THISPLUGIN", 'addon/' . $plugin . '/' . $plugin . '.php');
+       
        @include_once('addon/' . $plugin . '/' . $plugin . '.php');
        if(function_exists($plugin . '_uninstall')) {
                $func = $plugin . '_uninstall';
@@ -18,9 +21,11 @@ function uninstall_plugin($plugin){
 
 if (! function_exists('install_plugin')){
 function install_plugin($plugin) {
-
        // silently fail if plugin was removed
 
+       // define THISPLUGIN, make life easy to plugin devs :-)
+       define("THISPLUGIN", 'addon/' . $plugin . '/' . $plugin . '.php');
+
        if(! file_exists('addon/' . $plugin . '/' . $plugin . '.php'))
                return false;
        logger("Addons: installing " . $plugin);
@@ -77,7 +82,10 @@ function reload_plugins() {
                                $pl = trim($pl);
 
                                $fname = 'addon/' . $pl . '/' . $pl . '.php';
-                               
+
+                               // define THISPLUGIN, make life easy to plugin devs :-)
+                               define("THISPLUGIN", $fname);
+
                                if(file_exists($fname)) {
                                        $t = @filemtime($fname);
                                        foreach($installed as $i) {
@@ -163,6 +171,8 @@ function call_hooks($name, &$data = null) {
 
        if((is_array($a->hooks)) && (array_key_exists($name,$a->hooks))) {
                foreach($a->hooks[$name] as $hook) {
+                       // define THISPLUGIN, make life easy to plugin devs :-)
+                       define("THISPLUGIN", $hook[0]);
                        @include_once($hook[0]);
                        if(function_exists($hook[1])) {
                                $func = $hook[1];
index 46252c355f54b5509ab34a8f2e2fec7925fbaae2..4088ddab60840864c6b111c81c81615b1371cc94 100644 (file)
@@ -63,7 +63,7 @@
                                if ($b[0]=="$") $b =  $this->_get_var($b);
                                $val = ($a == $b);
                        } else if (strpos($args[2],"!=")>0){
-                               list($a,$b) = explode("!=",$args[2]);
+                               list($a,$b) = array_map("trim", explode("!=",$args[2]));
                                $a = $this->_get_var($a);
                                if ($b[0]=="$") $b =  $this->_get_var($b);
                                $val = ($a != $b);
                        return $ret;
                        
                }
+               
+               /**
+                * DEBUG node
+                * 
+                * {{ debug $var [$var [$var [...]]] }}{{ enddebug }}
+                * 
+                * replace node with <pre>var_dump($var, $var, ...);</pre>
+                */
+               private function _replcb_debug($args){
+                       $vars = array_map('trim', explode(" ",$args[2]));
+                       $vars[] = $args[1];
+
+                       $ret = "<pre>";
+                       foreach ($vars as $var){
+                               $ret .= htmlspecialchars(var_export( $this->_get_var($var), true ));
+                               $ret .= "\n";
+                       }
+                       $ret .= "</pre>";
+                       return $ret;
+               }
 
                private function _replcb_node($m) {
                        $node = $this->nodes[$m[1]];
index 1c50086aacb208d6e9848be317c9df2033353de3..3783d2accd9dbbce3d8bdf3fac9056d7897c98e4 100644 (file)
@@ -70,7 +70,7 @@ function notags($string) {
 if(! function_exists('escape_tags')) {
 function escape_tags($string) {
 
-       return(htmlspecialchars($string));
+       return(htmlspecialchars($string, ENT_COMPAT, 'UTF-8', false));
 }}
 
 
@@ -504,6 +504,10 @@ function get_tags($s) {
 
        $s = preg_replace('/\[code\](.*?)\[\/code\]/sm','',$s);
 
+       // ignore anything in a bbtag
+
+       $s = preg_replace('/\[(.*?)\]/sm','',$s);
+
        // Match full names against @tags including the space between first and last
        // We will look these up afterward to see if they are full names or not recognisable.
 
@@ -723,6 +727,39 @@ function get_poke_verbs() {
        return $arr;
 }
 
+function get_mood_verbs() {
+       
+       // index is present tense verb
+       // value is array containing past tense verb, translation of present, translation of past
+
+       $arr = array(
+               'happy'      => t('happy'),
+               'sad'        => t('sad'),
+               'mellow'     => t('mellow'),
+               'tired'      => t('tired'),
+               'perky'      => t('perky'),
+               'angry'      => t('angry'),
+               'stupefied'  => t('stupified'),
+               'puzzled'    => t('puzzled'),
+               'interested' => t('interested'),
+               'bitter'     => t('bitter'),
+               'cheerful'   => t('cheerful'),
+               'alive'      => t('alive'),
+               'annoyed'    => t('annoyed'),
+               'anxious'    => t('anxious'),
+               'cranky'     => t('cranky'),
+               'disturbed'  => t('disturbed'),
+               'frustrated' => t('frustrated'),
+               'motivated'  => t('motivated'),
+               'relaxed'    => t('relaxed'),
+               'surprised'  => t('surprised'),
+       );
+
+       call_hooks('mood_verbs', $arr);
+       return $arr;
+}
+
+
 /**
  * 
  * Function: smilies
index 039b30bbd10ef7eee76be202f58cd5b93e5476cf..2d06ef3742e092ff051d1596abe33bddea160ff3 100644 (file)
@@ -277,6 +277,20 @@ function create_user($arr) {
                require_once('include/group.php');
                group_add($newuid, t('Friends'));
 
+               if(! get_config('system', 'newuser_public')) {
+                       $r = q("SELECT id FROM `group` WHERE uid = %d AND name = '%s'",
+                               intval($newuid),
+                               dbesc(t('Friends'))
+                       );
+                       if($r) {
+                               q("UPDATE user SET def_gid = %d, allow_gid = '%s' WHERE uid = %d",
+                                  intval($r[0]['id']),
+                                  dbesc("<" . $r[0]['id'] . ">"),
+                                  intval($newuid)
+                               );
+                       }
+               }
+
        }
 
        // if we have no OpenID photo try to look up an avatar
index bbe9c7a18379b863330f3c3c6de9e341237c8d7a..85f4f7a39b190e8c423ff5fc2bfbaf20db8e7740 100644 (file)
@@ -275,7 +275,7 @@ aStates[249]="|'Adan|'Ataq|Abyan|Al Bayda'|Al Hudaydah|Al Jawf|Al Mahrah|Al Mahw
 aStates[250]="|Kosovo|Montenegro|Serbia|Vojvodina";\r
 aStates[251]="|Central|Copperbelt|Eastern|Luapula|Lusaka|North-Western|Northern|Southern|Western";\r
 aStates[252]="|Bulawayo|Harare|ManicalandMashonaland Central|Mashonaland East|Mashonaland West|Masvingo|Matabeleland North|Matabeleland South|Midlands";\r
-aStates[253]="|Self Hosted|Private Server|Architects Of Sleep|DFRN|Distributed Friend Network|Free-Beer.ch|Foojbook|Free-Haven|Friendica.eu|Friendika.me.4.it|Friendika - I Ask Questions|Frndc.com|Hikado|Hipatia|Hungerfreunde|Kaluguran Community|Kak Ste|Karl.Markx.pm|Loozah Social Club|MyFriendica.net|MyFriendNetwork|Oi!|OpenMindSpace|Optimistisch|Recolutionari.es|Sparkling Network|SPRACI|Styliztique|Sysfu Social Club|Trevena|theshi.re|Tumpambae|Uzmiac|Other";\r
+aStates[253]="|Self Hosted|Private Server|Architects Of Sleep|DFRN|Distributed Friend Network|ErrLock|Free-Beer.ch|Foojbook|Free-Haven|Friendica.eu|Friendika.me.4.it|Friendika - I Ask Questions|Frndc.com|Hikado|Hipatia|Hungerfreunde|Kaluguran Community|Kak Ste|Karl.Markx.pm|Loozah Social Club|MyFriendica.net|MyFriendNetwork|Oi!|OpenMindSpace|Optimistisch|Recolutionari.es|SilverLips|Sparkling Network|SPRACI|Styliztique|Sysfu Social Club|Trevena|theshi.re|Tumpambae|Uzmiac|Other";\r
 /* \r
  * gArCountryInfo\r
  * (0) Country name\r
index c7db9a06915e9aaa7b1061e8408d3daaf366ec99..6ab574c4e818f449742f9d9668c2b43b12b5ee2f 100644 (file)
                        //});
 
                        // add a new thread
-
-                       $('.tread-wrapper',data).each(function() {
+                       $('.toplevel_item',data).each(function() {
                                var ident = $(this).attr('id');
 
                                if($('#' + ident).length == 0 && profile_page == 1) {
index e8de026e40c7cb86e573722d6c7745f38a48f44e..f94d4dc98eecac18523381530ab4febbf44f0c91 100644 (file)
@@ -1 +1 @@
-function openClose(e){document.getElementById(e).style.display=="block"?document.getElementById(e).style.display="none":document.getElementById(e).style.display="block"}function openMenu(e){document.getElementById(e).style.display="block"}function closeMenu(e){document.getElementById(e).style.display="none"}function NavUpdate(){if(!stopped){var e="ping"+(localUser!=0?"?f=&uid="+localUser:"");$.get(e,function(e){$(e).find("result").each(function(){$("nav").trigger("nav-update",this),$("#live-network").length&&(src="network",liveUpdate()),$("#live-profile").length&&(src="profile",liveUpdate()),$("#live-community").length&&(src="community",liveUpdate()),$("#live-notes").length&&(src="notes",liveUpdate()),$("#live-display").length&&liking&&(liking=0,window.location.href=window.location.href),$("#live-photos").length&&liking&&(liking=0,window.location.href=window.location.href)})})}timer=setTimeout(NavUpdate,updateInterval)}function liveUpdate(){if(src==null||stopped||!profile_uid){$(".like-rotator").hide();return}if($(".comment-edit-text-full").length||in_progress){livetime&&clearTimeout(livetime),livetime=setTimeout(liveUpdate,1e4);return}livetime!=null&&(livetime=null),prev="live-"+src,in_progress=!0;var e=netargs.length?"/"+netargs:"",t="update_"+src+e+"&p="+profile_uid+"&page="+profile_page+"&msie="+(msie?1:0);$.get(t,function(e){in_progress=!1,$(".tread-wrapper",e).each(function(){var e=$(this).attr("id");$("#"+e).length==0&&profile_page==1?($("img",this).each(function(){$(this).attr("src",$(this).attr("dst"))}),$("#"+prev).after($(this))):($("img",this).each(function(){$(this).attr("src",$(this).attr("dst"))}),$("#"+e).replaceWith($(this))),prev=e}),$(".like-rotator").hide(),commentBusy&&(commentBusy=!1,$("body").css("cursor","auto")),$(".comment-edit-form  textarea").contact_autocomplete(baseurl+"/acl")})}function imgbright(e){$(e).removeClass("drophide").addClass("drop")}function imgdull(e){$(e).removeClass("drop").addClass("drophide")}function dolike(e,t){unpause(),$("#like-rotator-"+e.toString()).show(),$.get("like/"+e.toString()+"?verb="+t,NavUpdate),liking=1}function dostar(e){e=e.toString(),$("#like-rotator-"+e).show(),$.get("starred/"+e,function(t){t.match(/1/)?($("#starred-"+e).addClass("starred"),$("#starred-"+e).removeClass("unstarred"),$("#star-"+e).addClass("hidden"),$("#unstar-"+e).removeClass("hidden")):($("#starred-"+e).addClass("unstarred"),$("#starred-"+e).removeClass("starred"),$("#star-"+e).removeClass("hidden"),$("#unstar-"+e).addClass("hidden")),$("#like-rotator-"+e).hide()})}function getPosition(e){var t={x:0,y:0};if(e.pageX||e.pageY)t.x=e.pageX,t.y=e.pageY;else if(e.clientX||e.clientY)t.x=e.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft)-document.documentElement.clientLeft,t.y=e.clientY+(document.documentElement.scrollTop||document.body.scrollTop)-document.documentElement.clientTop;else if(e.x||e.y)t.x=e.x,t.y=e.y;return t}function lockview(e,t){e=e||window.event,cursor=getPosition(e),lockvisible?lockviewhide():(lockvisible=!0,$.get("lockview/"+t,function(e){$("#panel").html(e),$("#panel").css({left:cursor.x+5,top:cursor.y+5}),$("#panel").show()}))}function lockviewhide(){lockvisible=!1,$("#panel").hide()}function post_comment(e){return unpause(),commentBusy=!0,$("body").css("cursor","wait"),$("#comment-preview-inp-"+e).val("0"),$.post("item",$("#comment-edit-form-"+e).serialize(),function(t){if(t.success){$("#comment-edit-wrapper-"+e).hide(),$("#comment-edit-text-"+e).val("");var n=document.getElementById("comment-edit-text-"+e);n&&commentClose(n,e),timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,10)}t.reload&&(window.location.href=t.reload)},"json"),!1}function preview_comment(e){return $("#comment-preview-inp-"+e).val("1"),$("#comment-edit-preview-"+e).show(),$.post("item",$("#comment-edit-form-"+e).serialize(),function(t){t.preview&&($("#comment-edit-preview-"+e).html(t.preview),$("#comment-edit-preview-"+e+" a").click(function(){return!1}))},"json"),!0}function preview_post(){return $("#jot-preview").val("1"),$("#jot-preview-content").show(),tinyMCE.triggerSave(),$.post("item",$("#profile-jot-form").serialize(),function(e){e.preview&&($("#jot-preview-content").html(e.preview),$("#jot-preview-content a").click(function(){return!1}))},"json"),$("#jot-preview").val("0"),!0}function unpause(){totStopped=!1,stopped=!1,$("#pause").html("")}function bin2hex(e){var t,n,r=0,i=[];e+="",r=e.length;for(n=0;n<r;n++)i[n]=e.charCodeAt(n).toString(16).replace(/^([\da-f])$/,"0$1");return i.join("")}function groupChangeMember(e,t,n){$("body .fakelink").css("cursor","wait"),$.get("group/"+e+"/"+t+"?t="+n,function(e){$("#group-update-wrapper").html(e),$("body .fakelink").css("cursor","auto")})}function profChangeMember(e,t){$("body .fakelink").css("cursor","wait"),$.get("profperm/"+e+"/"+t,function(e){$("#prof-update-wrapper").html(e),$("body .fakelink").css("cursor","auto")})}function contactgroupChangeMember(e,t){$("body").css("cursor","wait"),$.get("contactgroup/"+e+"/"+t,function(e){$("body").css("cursor","auto")})}function checkboxhighlight(e){$(e).is(":checked")?$(e).addClass("checkeditem"):$(e).removeClass("checkeditem")}function notifyMarkAll(){$.get("notify/mark/all",function(e){timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,1e3)})}function fcFileBrowser(e,t,n,r){var i=baseurl+"/fbrowser/"+n+"/";return tinyMCE.activeEditor.windowManager.open({file:i,title:"File Browser",width:420,height:400,resizable:"yes",inline:"yes",close_previous:"no"},{window:r,input:e}),!1}function setupFieldRichtext(){tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:"fieldRichtext",plugins:"bbcode,paste, inlinepopups",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,file_browser_callback:"fcFileBrowser"})}function previewTheme(e){theme=$(e).val(),$.getJSON("pretheme?f=&theme="+theme,function(e){$("#theme-preview").html('<div id="theme-desc">'+e.desc+'</div><div id="theme-version">'+e.version+'</div><div id="theme-credits">'+e.credits+'</div><a href="'+e.img+'"><img src="'+e.img+'" width="320" height="240" alt="'+theme+'" /></a>')})}var src=null,prev=null,livetime=null,msie=!1,stopped=!1,totStopped=!1,timer=null,pr=0,liking=0,in_progress=!1,langSelect=!1,commentBusy=!1,last_popup_menu=null,last_popup_button=null;$(function(){function e(){last_popup_menu&&(last_popup_menu.hide(),last_popup_button.removeClass("selected"),last_popup_menu=null,last_popup_button=null)}$.ajaxSetup({cache:!1}),msie=$.browser.msie,$(".onoff input").each(function(){val=$(this).val(),id=$(this).attr("id"),$("#"+id+"_onoff ."+(val==0?"on":"off")).addClass("hidden")}),$(".onoff > a").click(function(e){e.preventDefault();var t=$(this).siblings("input"),n=1-t.val(),r=t.attr("id");$("#"+r+"_onoff ."+(n==0?"on":"off")).addClass("hidden"),$("#"+r+"_onoff ."+(n==1?"on":"off")).removeClass("hidden"),t.val(n)}),setupFieldRichtext(),$("a[rel^=#]").click(function(t){return e(),menu=$($(this).attr("rel")),t.preventDefault(),t.stopPropagation(),menu.attr("popup")=="false"?!1:($(this).parent().toggleClass("selected"),menu.toggle(),menu.css("display")=="none"?(last_popup_menu=null,last_popup_button=null):(last_popup_menu=menu,last_popup_button=$(this).parent()),!1)}),$("html").click(function(){e()}),$("a.popupbox").fancybox({transitionIn:"elastic",transitionOut:"elastic"});var t=unescape($("#nav-notifications-template[rel=template]").html()),n=unescape($("<div>").append($("#nav-notifications-see-all").clone()).html()),r=unescape($("<div>").append($("#nav-notifications-mark-all").clone()).html()),i=unescape($("#nav-notifications-menu").html());$("nav").bind("nav-update",function(e,s){var o=$(s).find("invalid").text();o==1&&(window.location.href=window.location.href);var u=$(s).find("net").text();u==0?(u="",$("#net-update").removeClass("show")):$("#net-update").addClass("show"),$("#net-update").html(u);var a=$(s).find("home").text();a==0?(a="",$("#home-update").removeClass("show")):$("#home-update").addClass("show"),$("#home-update").html(a);var f=$(s).find("intro").text();f==0?(f="",$("#intro-update").removeClass("show")):$("#intro-update").addClass("show"),$("#intro-update").html(f);var l=$(s).find("mail").text();l==0?(l="",$("#mail-update").removeClass("show")):$("#mail-update").addClass("show"),$("#mail-update").html(l);var f=$(s).find("intro").text();f==0?(f="",$("#intro-update-li").removeClass("show")):$("#intro-update-li").addClass("show"),$("#intro-update-li").html(f);var l=$(s).find("mail").text();l==0?(l="",$("#mail-update-li").removeClass("show")):$("#mail-update-li").addClass("show"),$("#mail-update-li").html(l);var c=$(s).find("notif");c.children("note").length==0?$("#nav-notifications-menu").html(i):(nnm=$("#nav-notifications-menu"),nnm.html(n+r),c.children("note").each(function(){e=$(this),text=e.text().format("<span class='contactname'>"+e.attr("name")+"</span>"),html=t.format(e.attr("href"),e.attr("photo"),text,e.attr("date"),e.attr("seen")),nnm.append(html)})),notif=c.attr("count"),notif>0?$("#nav-notifications-linkmenu").addClass("on"):$("#nav-notifications-linkmenu").removeClass("on"),notif==0?(notif="",$("#notify-update").removeClass("show")):$("#notify-update").addClass("show"),$("#notify-update").html(notif);var h=$(s).find("sysmsgs");h.children("notice").each(function(){text=$(this).text(),$.jGrowl(text,{sticky:!0,theme:"notice"})}),h.children("info").each(function(){text=$(this).text(),$.jGrowl(text,{sticky:!1,theme:"info",life:1e4})})}),NavUpdate(),$(document).keydown(function(e){if(e.keyCode=="8"){var t=e.target||e.srcElement;if(!/input|textarea/i.test(t.nodeName))return!1}e.keyCode=="19"||e.ctrlKey&&e.which=="32"?(e.preventDefault(),stopped==0?(stopped=!0,e.ctrlKey&&(totStopped=!0),$("#pause").html('<img src="images/pause.gif" alt="pause" style="border: 1px solid black;" />')):unpause()):totStopped||unpause()})});var lockvisible=!1;String.prototype.format=function(){var e=this;for(var t=0;t<arguments.length;t++){var n=new RegExp("\\{"+t+"\\}","gi");e=e.replace(n,arguments[t])}return e},Array.prototype.remove=function(e){to=undefined,from=this.indexOf(e);var t=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,t)};
\ No newline at end of file
+function openClose(e){document.getElementById(e).style.display=="block"?document.getElementById(e).style.display="none":document.getElementById(e).style.display="block"}function openMenu(e){document.getElementById(e).style.display="block"}function closeMenu(e){document.getElementById(e).style.display="none"}function NavUpdate(){if(!stopped){var e="ping"+(localUser!=0?"?f=&uid="+localUser:"");$.get(e,function(e){$(e).find("result").each(function(){$("nav").trigger("nav-update",this),$("#live-network").length&&(src="network",liveUpdate()),$("#live-profile").length&&(src="profile",liveUpdate()),$("#live-community").length&&(src="community",liveUpdate()),$("#live-notes").length&&(src="notes",liveUpdate()),$("#live-display").length&&liking&&(liking=0,window.location.href=window.location.href),$("#live-photos").length&&liking&&(liking=0,window.location.href=window.location.href)})})}timer=setTimeout(NavUpdate,updateInterval)}function liveUpdate(){if(src==null||stopped||!profile_uid){$(".like-rotator").hide();return}if($(".comment-edit-text-full").length||in_progress){livetime&&clearTimeout(livetime),livetime=setTimeout(liveUpdate,1e4);return}livetime!=null&&(livetime=null),prev="live-"+src,in_progress=!0;var e=netargs.length?"/"+netargs:"",t="update_"+src+e+"&p="+profile_uid+"&page="+profile_page+"&msie="+(msie?1:0);$.get(t,function(e){in_progress=!1,$(".toplevel_item",e).each(function(){var e=$(this).attr("id");$("#"+e).length==0&&profile_page==1?($("img",this).each(function(){$(this).attr("src",$(this).attr("dst"))}),$("#"+prev).after($(this))):($("img",this).each(function(){$(this).attr("src",$(this).attr("dst"))}),$("#"+e).replaceWith($(this))),prev=e}),$(".like-rotator").hide(),commentBusy&&(commentBusy=!1,$("body").css("cursor","auto")),$(".comment-edit-form  textarea").contact_autocomplete(baseurl+"/acl")})}function imgbright(e){$(e).removeClass("drophide").addClass("drop")}function imgdull(e){$(e).removeClass("drop").addClass("drophide")}function dolike(e,t){unpause(),$("#like-rotator-"+e.toString()).show(),$.get("like/"+e.toString()+"?verb="+t,NavUpdate),liking=1}function dostar(e){e=e.toString(),$("#like-rotator-"+e).show(),$.get("starred/"+e,function(t){t.match(/1/)?($("#starred-"+e).addClass("starred"),$("#starred-"+e).removeClass("unstarred"),$("#star-"+e).addClass("hidden"),$("#unstar-"+e).removeClass("hidden")):($("#starred-"+e).addClass("unstarred"),$("#starred-"+e).removeClass("starred"),$("#star-"+e).removeClass("hidden"),$("#unstar-"+e).addClass("hidden")),$("#like-rotator-"+e).hide()})}function getPosition(e){var t={x:0,y:0};if(e.pageX||e.pageY)t.x=e.pageX,t.y=e.pageY;else if(e.clientX||e.clientY)t.x=e.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft)-document.documentElement.clientLeft,t.y=e.clientY+(document.documentElement.scrollTop||document.body.scrollTop)-document.documentElement.clientTop;else if(e.x||e.y)t.x=e.x,t.y=e.y;return t}function lockview(e,t){e=e||window.event,cursor=getPosition(e),lockvisible?lockviewhide():(lockvisible=!0,$.get("lockview/"+t,function(e){$("#panel").html(e),$("#panel").css({left:cursor.x+5,top:cursor.y+5}),$("#panel").show()}))}function lockviewhide(){lockvisible=!1,$("#panel").hide()}function post_comment(e){return unpause(),commentBusy=!0,$("body").css("cursor","wait"),$("#comment-preview-inp-"+e).val("0"),$.post("item",$("#comment-edit-form-"+e).serialize(),function(t){if(t.success){$("#comment-edit-wrapper-"+e).hide(),$("#comment-edit-text-"+e).val("");var n=document.getElementById("comment-edit-text-"+e);n&&commentClose(n,e),timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,10)}t.reload&&(window.location.href=t.reload)},"json"),!1}function preview_comment(e){return $("#comment-preview-inp-"+e).val("1"),$("#comment-edit-preview-"+e).show(),$.post("item",$("#comment-edit-form-"+e).serialize(),function(t){t.preview&&($("#comment-edit-preview-"+e).html(t.preview),$("#comment-edit-preview-"+e+" a").click(function(){return!1}))},"json"),!0}function preview_post(){return $("#jot-preview").val("1"),$("#jot-preview-content").show(),tinyMCE.triggerSave(),$.post("item",$("#profile-jot-form").serialize(),function(e){e.preview&&($("#jot-preview-content").html(e.preview),$("#jot-preview-content a").click(function(){return!1}))},"json"),$("#jot-preview").val("0"),!0}function unpause(){totStopped=!1,stopped=!1,$("#pause").html("")}function bin2hex(e){var t,n,r=0,i=[];e+="",r=e.length;for(n=0;n<r;n++)i[n]=e.charCodeAt(n).toString(16).replace(/^([\da-f])$/,"0$1");return i.join("")}function groupChangeMember(e,t,n){$("body .fakelink").css("cursor","wait"),$.get("group/"+e+"/"+t+"?t="+n,function(e){$("#group-update-wrapper").html(e),$("body .fakelink").css("cursor","auto")})}function profChangeMember(e,t){$("body .fakelink").css("cursor","wait"),$.get("profperm/"+e+"/"+t,function(e){$("#prof-update-wrapper").html(e),$("body .fakelink").css("cursor","auto")})}function contactgroupChangeMember(e,t){$("body").css("cursor","wait"),$.get("contactgroup/"+e+"/"+t,function(e){$("body").css("cursor","auto")})}function checkboxhighlight(e){$(e).is(":checked")?$(e).addClass("checkeditem"):$(e).removeClass("checkeditem")}function notifyMarkAll(){$.get("notify/mark/all",function(e){timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,1e3)})}function fcFileBrowser(e,t,n,r){var i=baseurl+"/fbrowser/"+n+"/";return tinyMCE.activeEditor.windowManager.open({file:i,title:"File Browser",width:420,height:400,resizable:"yes",inline:"yes",close_previous:"no"},{window:r,input:e}),!1}function setupFieldRichtext(){tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:"fieldRichtext",plugins:"bbcode,paste, inlinepopups",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,file_browser_callback:"fcFileBrowser"})}function previewTheme(e){theme=$(e).val(),$.getJSON("pretheme?f=&theme="+theme,function(e){$("#theme-preview").html('<div id="theme-desc">'+e.desc+'</div><div id="theme-version">'+e.version+'</div><div id="theme-credits">'+e.credits+'</div><a href="'+e.img+'"><img src="'+e.img+'" width="320" height="240" alt="'+theme+'" /></a>')})}var src=null,prev=null,livetime=null,msie=!1,stopped=!1,totStopped=!1,timer=null,pr=0,liking=0,in_progress=!1,langSelect=!1,commentBusy=!1,last_popup_menu=null,last_popup_button=null;$(function(){function e(){last_popup_menu&&(last_popup_menu.hide(),last_popup_button.removeClass("selected"),last_popup_menu=null,last_popup_button=null)}$.ajaxSetup({cache:!1}),msie=$.browser.msie,$(".onoff input").each(function(){val=$(this).val(),id=$(this).attr("id"),$("#"+id+"_onoff ."+(val==0?"on":"off")).addClass("hidden")}),$(".onoff > a").click(function(e){e.preventDefault();var t=$(this).siblings("input"),n=1-t.val(),r=t.attr("id");$("#"+r+"_onoff ."+(n==0?"on":"off")).addClass("hidden"),$("#"+r+"_onoff ."+(n==1?"on":"off")).removeClass("hidden"),t.val(n)}),setupFieldRichtext(),$("a[rel^=#]").click(function(t){return e(),menu=$($(this).attr("rel")),t.preventDefault(),t.stopPropagation(),menu.attr("popup")=="false"?!1:($(this).parent().toggleClass("selected"),menu.toggle(),menu.css("display")=="none"?(last_popup_menu=null,last_popup_button=null):(last_popup_menu=menu,last_popup_button=$(this).parent()),!1)}),$("html").click(function(){e()}),$("a.popupbox").fancybox({transitionIn:"elastic",transitionOut:"elastic"});var t=unescape($("#nav-notifications-template[rel=template]").html()),n=unescape($("<div>").append($("#nav-notifications-see-all").clone()).html()),r=unescape($("<div>").append($("#nav-notifications-mark-all").clone()).html()),i=unescape($("#nav-notifications-menu").html());$("nav").bind("nav-update",function(e,s){var o=$(s).find("invalid").text();o==1&&(window.location.href=window.location.href);var u=$(s).find("net").text();u==0?(u="",$("#net-update").removeClass("show")):$("#net-update").addClass("show"),$("#net-update").html(u);var a=$(s).find("home").text();a==0?(a="",$("#home-update").removeClass("show")):$("#home-update").addClass("show"),$("#home-update").html(a);var f=$(s).find("intro").text();f==0?(f="",$("#intro-update").removeClass("show")):$("#intro-update").addClass("show"),$("#intro-update").html(f);var l=$(s).find("mail").text();l==0?(l="",$("#mail-update").removeClass("show")):$("#mail-update").addClass("show"),$("#mail-update").html(l);var f=$(s).find("intro").text();f==0?(f="",$("#intro-update-li").removeClass("show")):$("#intro-update-li").addClass("show"),$("#intro-update-li").html(f);var l=$(s).find("mail").text();l==0?(l="",$("#mail-update-li").removeClass("show")):$("#mail-update-li").addClass("show"),$("#mail-update-li").html(l);var c=$(s).find("notif");c.children("note").length==0?$("#nav-notifications-menu").html(i):(nnm=$("#nav-notifications-menu"),nnm.html(n+r),c.children("note").each(function(){e=$(this),text=e.text().format("<span class='contactname'>"+e.attr("name")+"</span>"),html=t.format(e.attr("href"),e.attr("photo"),text,e.attr("date"),e.attr("seen")),nnm.append(html)})),notif=c.attr("count"),notif>0?$("#nav-notifications-linkmenu").addClass("on"):$("#nav-notifications-linkmenu").removeClass("on"),notif==0?(notif="",$("#notify-update").removeClass("show")):$("#notify-update").addClass("show"),$("#notify-update").html(notif);var h=$(s).find("sysmsgs");h.children("notice").each(function(){text=$(this).text(),$.jGrowl(text,{sticky:!0,theme:"notice"})}),h.children("info").each(function(){text=$(this).text(),$.jGrowl(text,{sticky:!1,theme:"info",life:1e4})})}),NavUpdate(),$(document).keydown(function(e){if(e.keyCode=="8"){var t=e.target||e.srcElement;if(!/input|textarea/i.test(t.nodeName))return!1}e.keyCode=="19"||e.ctrlKey&&e.which=="32"?(e.preventDefault(),stopped==0?(stopped=!0,e.ctrlKey&&(totStopped=!0),$("#pause").html('<img src="images/pause.gif" alt="pause" style="border: 1px solid black;" />')):unpause()):totStopped||unpause()})});var lockvisible=!1;String.prototype.format=function(){var e=this;for(var t=0;t<arguments.length;t++){var n=new RegExp("\\{"+t+"\\}","gi");e=e.replace(n,arguments[t])}return e},Array.prototype.remove=function(e){to=undefined,from=this.indexOf(e);var t=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,t)};
\ No newline at end of file
diff --git a/mod/_well_known.php b/mod/_well_known.php
new file mode 100644 (file)
index 0000000..155810d
--- /dev/null
@@ -0,0 +1,14 @@
+<?php\r
+require_once("hostxrd.php");\r
+\r
+function _well_known_init(&$a){\r
+    if ($a->argc > 1) {\r
+        switch($a->argv[1]) {\r
+            case "host-meta":\r
+                hostxrd_init($a);\r
+                break;\r
+        }\r
+    }\r
+    http_status_exit(404);\r
+    killme();\r
+}
\ No newline at end of file
index 05af01aa41d55052a5ce88ff3c544003a8ff7efd..cc13e27b144134f08831ebafa0d212224ca52eba 100644 (file)
@@ -231,42 +231,47 @@ function admin_page_site_post(&$a){
                return;
        }
 
-    check_form_security_token_redirectOnErr('/admin/site', 'admin_site');
+       check_form_security_token_redirectOnErr('/admin/site', 'admin_site');
 
-       $sitename                       =       ((x($_POST,'sitename'))                 ? notags(trim($_POST['sitename']))                      : '');
-       $banner                         =       ((x($_POST,'banner'))                   ? trim($_POST['banner'])                                        : false);
-       $language                       =       ((x($_POST,'language'))                 ? notags(trim($_POST['language']))                      : '');
-       $theme                          =       ((x($_POST,'theme'))                    ? notags(trim($_POST['theme']))                         : '');
+       $sitename               =       ((x($_POST,'sitename'))                 ? notags(trim($_POST['sitename']))              : '');
+       $banner                 =       ((x($_POST,'banner'))                   ? trim($_POST['banner'])                        : false);
+       $language               =       ((x($_POST,'language'))                 ? notags(trim($_POST['language']))              : '');
+       $theme                  =       ((x($_POST,'theme'))                    ? notags(trim($_POST['theme']))                 : '');
+       $theme_mobile           =       ((x($_POST,'theme_mobile'))             ? notags(trim($_POST['theme_mobile']))          : '');
        $maximagesize           =       ((x($_POST,'maximagesize'))             ? intval(trim($_POST['maximagesize']))          :  0);
+       $maximagelength         =       ((x($_POST,'maximagelength'))           ? intval(trim($_POST['maximagelength']))        :  MAX_IMAGE_LENGTH);
+       $jpegimagequality       =       ((x($_POST,'jpegimagequality'))         ? intval(trim($_POST['jpegimagequality']))      :  JPEG_QUALITY);
        
        
-       $register_policy        =       ((x($_POST,'register_policy'))  ? intval(trim($_POST['register_policy']))       :  0);
-       $abandon_days       =   ((x($_POST,'abandon_days'))         ? intval(trim($_POST['abandon_days']))          :  0);
+       $register_policy        =       ((x($_POST,'register_policy'))          ? intval(trim($_POST['register_policy']))       :  0);
+       $abandon_days           =       ((x($_POST,'abandon_days'))             ? intval(trim($_POST['abandon_days']))          :  0);
 
-       $register_text          =       ((x($_POST,'register_text'))    ? notags(trim($_POST['register_text']))         : '');  
+       $register_text          =       ((x($_POST,'register_text'))            ? notags(trim($_POST['register_text']))         : '');  
        
-       $allowed_sites          =       ((x($_POST,'allowed_sites'))    ? notags(trim($_POST['allowed_sites']))         : '');
-       $allowed_email          =       ((x($_POST,'allowed_email'))    ? notags(trim($_POST['allowed_email']))         : '');
-       $block_public           =       ((x($_POST,'block_public'))             ? True  :       False);
-       $force_publish          =       ((x($_POST,'publish_all'))              ? True  :       False);
+       $allowed_sites          =       ((x($_POST,'allowed_sites'))            ? notags(trim($_POST['allowed_sites']))         : '');
+       $allowed_email          =       ((x($_POST,'allowed_email'))            ? notags(trim($_POST['allowed_email']))         : '');
+       $block_public           =       ((x($_POST,'block_public'))             ? True                                          : False);
+       $force_publish          =       ((x($_POST,'publish_all'))              ? True                                          : False);
        $global_directory       =       ((x($_POST,'directory_submit_url'))     ? notags(trim($_POST['directory_submit_url']))  : '');
-       $no_multi_reg           =       ((x($_POST,'no_multi_reg'))             ? True  :       False);
-       $no_openid                      =       !((x($_POST,'no_openid'))               ? True  :       False);
-       $no_regfullname         =       !((x($_POST,'no_regfullname'))  ? True  :       False);
-       $no_utf                         =       !((x($_POST,'no_utf'))                  ? True  :       False);
-       $no_community_page      =       !((x($_POST,'no_community_page'))       ? True  :       False);
-
-       $verifyssl                      =       ((x($_POST,'verifyssl'))                ? True  :       False);
-       $proxyuser                      =       ((x($_POST,'proxyuser'))                ? notags(trim($_POST['proxyuser']))     : '');
-       $proxy                          =       ((x($_POST,'proxy'))                    ? notags(trim($_POST['proxy'])) : '');
-       $timeout                        =       ((x($_POST,'timeout'))                  ? intval(trim($_POST['timeout']))               : 60);
-       $delivery_interval      =       ((x($_POST,'delivery_interval'))? intval(trim($_POST['delivery_interval']))             : 0);
-       $poll_interval  =       ((x($_POST,'poll_interval'))? intval(trim($_POST['poll_interval']))             : 0);
-       $maxloadavg             =       ((x($_POST,'maxloadavg'))       ? intval(trim($_POST['maxloadavg']))            : 50);
-       $dfrn_only          =   ((x($_POST,'dfrn_only'))            ? True      :       False);
-       $ostatus_disabled   =   !((x($_POST,'ostatus_disabled')) ? True  :   False);
-       $diaspora_enabled   =   ((x($_POST,'diaspora_enabled')) ? True   :  False);
-       $ssl_policy         =   ((x($_POST,'ssl_policy')) ? intval($_POST['ssl_policy']) : 0);
+       $thread_allow           =       ((x($_POST,'thread_allow'))             ? True                                          : False);
+       $newuser_public         =       ((x($_POST,'newuser_public'))           ? True                                          : False);
+       $no_multi_reg           =       ((x($_POST,'no_multi_reg'))             ? True                                          : False);
+       $no_openid              =       !((x($_POST,'no_openid'))               ? True                                          : False);
+       $no_regfullname         =       !((x($_POST,'no_regfullname'))          ? True                                          : False);
+       $no_utf                 =       !((x($_POST,'no_utf'))                  ? True                                          : False);
+       $no_community_page      =       !((x($_POST,'no_community_page'))       ? True                                          : False);
+
+       $verifyssl              =       ((x($_POST,'verifyssl'))                ? True                                          : False);
+       $proxyuser              =       ((x($_POST,'proxyuser'))                ? notags(trim($_POST['proxyuser']))             : '');
+       $proxy                  =       ((x($_POST,'proxy'))                    ? notags(trim($_POST['proxy']))                 : '');
+       $timeout                =       ((x($_POST,'timeout'))                  ? intval(trim($_POST['timeout']))               : 60);
+       $delivery_interval      =       ((x($_POST,'delivery_interval'))        ? intval(trim($_POST['delivery_interval']))     : 0);
+       $poll_interval          =       ((x($_POST,'poll_interval'))            ? intval(trim($_POST['poll_interval']))         : 0);
+       $maxloadavg             =       ((x($_POST,'maxloadavg'))               ? intval(trim($_POST['maxloadavg']))            : 50);
+       $dfrn_only              =       ((x($_POST,'dfrn_only'))                ? True                                          : False);
+       $ostatus_disabled       =       !((x($_POST,'ostatus_disabled'))        ? True                                          : False);
+       $diaspora_enabled       =       ((x($_POST,'diaspora_enabled'))         ? True                                          : False);
+       $ssl_policy             =       ((x($_POST,'ssl_policy'))               ? intval($_POST['ssl_policy'])                  : 0);
 
        if($ssl_policy != intval(get_config('system','ssl_policy'))) {
                if($ssl_policy == SSL_POLICY_FULL) {
@@ -324,7 +329,14 @@ function admin_page_site_post(&$a){
        }
        set_config('system','language', $language);
        set_config('system','theme', $theme);
+        if ( $theme_mobile === '---' ) {
+            del_config('system','mobile-theme');
+        } else {
+           set_config('system','mobile-theme', $theme_mobile);
+        }
        set_config('system','maximagesize', $maximagesize);
+       set_config('system','max_image_length', $maximagelength);
+       set_config('system','jpeg_quality', $jpegimagequality);
        
        set_config('config','register_policy', $register_policy);
        set_config('system','account_abandon_days', $abandon_days);
@@ -342,6 +354,8 @@ function admin_page_site_post(&$a){
        } else {
                set_config('system','directory_submit_url', $global_directory);
        }
+       set_config('system','thread_allow', $thread_allow);
+       set_config('system','newuser_public', $newuser_public);
 
        set_config('system','block_extended_register', $no_multi_reg);
        set_config('system','no_openid', $no_openid);
@@ -384,12 +398,17 @@ function admin_page_site(&$a) {
        
        /* Installed themes */
        $theme_choices = array();
+       $theme_choices_mobile = array();
+        $theme_choices_mobile["---"] = t("Don't apply a special theme for mobile devices.");
        $files = glob('view/theme/*');
        if($files) {
                foreach($files as $file) {
                        $f = basename($file);
                        $theme_name = ((file_exists($file . '/experimental')) ?  sprintf("%s - \x28Experimental\x29", $f) : $f);
-                       $theme_choices[$f] = $theme_name;
+                        $theme_choices[$f] = $theme_name;
+                        if (file_exists($file . '/mobile')) {
+                            $theme_choices_mobile[$f] = $theme_name;
+                        }
                }
        }
        
@@ -426,38 +445,43 @@ function admin_page_site(&$a) {
                '$advanced' => t('Advanced'),
                
                '$baseurl' => $a->get_baseurl(true),
-                                                                       // name, label, value, help string, extra data...
+               // name, label, value, help string, extra data...
                '$sitename'             => array('sitename', t("Site name"), htmlentities($a->config['sitename'], ENT_QUOTES), ""),
-               '$banner'                       => array('banner', t("Banner/Logo"), $banner, ""),
+               '$banner'               => array('banner', t("Banner/Logo"), $banner, ""),
                '$language'             => array('language', t("System language"), get_config('system','language'), "", $lang_choices),
-               '$theme'                        => array('theme', t("System theme"), get_config('system','theme'), t("Default system theme - may be over-ridden by user profiles - <a href='#' id='cnftheme'>change theme settings</a>"), $theme_choices),
-               '$ssl_policy'       => array('ssl_policy', t("SSL link policy"), (string) intval(get_config('system','ssl_policy')), t("Determines whether generated links should be forced to use SSL"), $ssl_choices),
+               '$theme'                => array('theme', t("System theme"), get_config('system','theme'), t("Default system theme - may be over-ridden by user profiles - <a href='#' id='cnftheme'>change theme settings</a>"), $theme_choices),
+               '$theme_mobile'         => array('theme_mobile', t("Mobile system theme"), get_config('system','mobile-theme'), t("Theme for mobile devices"), $theme_choices_mobile),
+               '$ssl_policy'           => array('ssl_policy', t("SSL link policy"), (string) intval(get_config('system','ssl_policy')), t("Determines whether generated links should be forced to use SSL"), $ssl_choices),
                '$maximagesize'         => array('maximagesize', t("Maximum image size"), get_config('system','maximagesize'), t("Maximum size in bytes of uploaded images. Default is 0, which means no limits.")),
+               '$maximagelength'               => array('maximagelength', t("Maximum image length"), get_config('system','max_image_length'), t("Maximum length in pixels of the longest side of uploaded images. Default is -1, which means no limits.")),
+               '$jpegimagequality'             => array('jpegimagequality', t("JPEG image quality"), get_config('system','jpeg_quality'), t("Uploaded JPEGS will be saved at this quality setting [0-100]. Default is 100, which is full quality.")),
 
                '$register_policy'      => array('register_policy', t("Register policy"), $a->config['register_policy'], "", $register_choices),
                '$register_text'        => array('register_text', t("Register text"), htmlentities($a->config['register_text'], ENT_QUOTES, 'UTF-8'), t("Will be displayed prominently on the registration page.")),
-               '$abandon_days'     => array('abandon_days', t('Accounts abandoned after x days'), get_config('system','account_abandon_days'), t('Will not waste system resources polling external sites for abandonded accounts. Enter 0 for no time limit.')),
+               '$abandon_days'         => array('abandon_days', t('Accounts abandoned after x days'), get_config('system','account_abandon_days'), t('Will not waste system resources polling external sites for abandonded accounts. Enter 0 for no time limit.')),
                '$allowed_sites'        => array('allowed_sites', t("Allowed friend domains"), get_config('system','allowed_sites'), t("Comma separated list of domains which are allowed to establish friendships with this site. Wildcards are accepted. Empty to allow any domains")),
                '$allowed_email'        => array('allowed_email', t("Allowed email domains"), get_config('system','allowed_email'), t("Comma separated list of domains which are allowed in email addresses for registrations to this site. Wildcards are accepted. Empty to allow any domains")),
                '$block_public'         => array('block_public', t("Block public"), get_config('system','block_public'), t("Check to block public access to all otherwise public personal pages on this site unless you are currently logged in.")),
                '$force_publish'        => array('publish_all', t("Force publish"), get_config('system','publish_all'), t("Check to force all profiles on this site to be listed in the site directory.")),
                '$global_directory'     => array('directory_submit_url', t("Global directory update URL"), get_config('system','directory_submit_url'), t("URL to update the global directory. If this is not set, the global directory is completely unavailable to the application.")),
+               '$thread_allow'         => array('thread_allow', t("Allow threaded items"), get_config('system','thread_allow'), t("Allow infinite level threading for items on this site.")),
+               '$newuser_public'       => array('newuser_public', t("No default permissions for new users"), get_config('system','newuser_public'), t("New users will have no private permissions set for their posts by default, making their posts public until they change it.")),
                        
                '$no_multi_reg'         => array('no_multi_reg', t("Block multiple registrations"),  get_config('system','block_extended_register'), t("Disallow users to register additional accounts for use as pages.")),
                '$no_openid'            => array('no_openid', t("OpenID support"), !get_config('system','no_openid'), t("OpenID support for registration and logins.")),
                '$no_regfullname'       => array('no_regfullname', t("Fullname check"), !get_config('system','no_regfullname'), t("Force users to register with a space between firstname and lastname in Full name, as an antispam measure")),
-               '$no_utf'                       => array('no_utf', t("UTF-8 Regular expressions"), !get_config('system','no_utf'), t("Use PHP UTF8 regular expressions")),
-               '$no_community_page' => array('no_community_page', t("Show Community Page"), !get_config('system','no_community_page'), t("Display a Community page showing all recent public postings on this site.")),
-               '$ostatus_disabled' => array('ostatus_disabled', t("Enable OStatus support"), !get_config('system','ostatus_disable'), t("Provide built-in OStatus \x28identi.ca, status.net, etc.\x29 compatibility. All communications in OStatus are public, so privacy warnings will be occasionally displayed.")), 
-               '$diaspora_enabled' => array('diaspora_enabled', t("Enable Diaspora support"), get_config('system','diaspora_enabled'), t("Provide built-in Diaspora network compatibility.")), 
-               '$dfrn_only'        => array('dfrn_only', t('Only allow Friendica contacts'), get_config('system','dfrn_only'), t("All contacts must use Friendica protocols. All other built-in communication protocols disabled.")),
+               '$no_utf'               => array('no_utf', t("UTF-8 Regular expressions"), !get_config('system','no_utf'), t("Use PHP UTF8 regular expressions")),
+               '$no_community_page'    => array('no_community_page', t("Show Community Page"), !get_config('system','no_community_page'), t("Display a Community page showing all recent public postings on this site.")),
+               '$ostatus_disabled'     => array('ostatus_disabled', t("Enable OStatus support"), !get_config('system','ostatus_disable'), t("Provide built-in OStatus \x28identi.ca, status.net, etc.\x29 compatibility. All communications in OStatus are public, so privacy warnings will be occasionally displayed.")),     
+               '$diaspora_enabled'     => array('diaspora_enabled', t("Enable Diaspora support"), get_config('system','diaspora_enabled'), t("Provide built-in Diaspora network compatibility.")),     
+               '$dfrn_only'            => array('dfrn_only', t('Only allow Friendica contacts'), get_config('system','dfrn_only'), t("All contacts must use Friendica protocols. All other built-in communication protocols disabled.")),
                '$verifyssl'            => array('verifyssl', t("Verify SSL"), get_config('system','verifyssl'), t("If you wish, you can turn on strict certificate checking. This will mean you cannot connect (at all) to self-signed SSL sites.")),
                '$proxyuser'            => array('proxyuser', t("Proxy user"), get_config('system','proxyuser'), ""),
-               '$proxy'                        => array('proxy', t("Proxy URL"), get_config('system','proxy'), ""),
-               '$timeout'                      => array('timeout', t("Network timeout"), (x(get_config('system','curl_timeout'))?get_config('system','curl_timeout'):60), t("Value is in seconds. Set to 0 for unlimited (not recommended).")),
-               '$delivery_interval'                    => array('delivery_interval', t("Delivery interval"), (x(get_config('system','delivery_interval'))?get_config('system','delivery_interval'):2), t("Delay background delivery processes by this many seconds to reduce system load. Recommend: 4-5 for shared hosts, 2-3 for virtual private servers. 0-1 for large dedicated servers.")),
-               '$poll_interval'                        => array('poll_interval', t("Poll interval"), (x(get_config('system','poll_interval'))?get_config('system','poll_interval'):2), t("Delay background polling processes by this many seconds to reduce system load. If 0, use delivery interval.")),
-               '$maxloadavg'                   => array('maxloadavg', t("Maximum Load Average"), ((intval(get_config('system','maxloadavg')) > 0)?get_config('system','maxloadavg'):50), t("Maximum system load before delivery and poll processes are deferred - default 50.")),
+               '$proxy'                => array('proxy', t("Proxy URL"), get_config('system','proxy'), ""),
+               '$timeout'              => array('timeout', t("Network timeout"), (x(get_config('system','curl_timeout'))?get_config('system','curl_timeout'):60), t("Value is in seconds. Set to 0 for unlimited (not recommended).")),
+               '$delivery_interval'    => array('delivery_interval', t("Delivery interval"), (x(get_config('system','delivery_interval'))?get_config('system','delivery_interval'):2), t("Delay background delivery processes by this many seconds to reduce system load. Recommend: 4-5 for shared hosts, 2-3 for virtual private servers. 0-1 for large dedicated servers.")),
+               '$poll_interval'        => array('poll_interval', t("Poll interval"), (x(get_config('system','poll_interval'))?get_config('system','poll_interval'):2), t("Delay background polling processes by this many seconds to reduce system load. If 0, use delivery interval.")),
+               '$maxloadavg'           => array('maxloadavg', t("Maximum Load Average"), ((intval(get_config('system','maxloadavg')) > 0)?get_config('system','maxloadavg'):50), t("Maximum system load before delivery and poll processes are deferred - default 50.")),
         '$form_security_token' => get_form_security_token("admin_site"),
                        
        ));
index 5f3e954f60d2337a9af588f9524033b32b10a2fc..e6789860db0ed6c60e343977d9004e0dbcfa456d 100644 (file)
@@ -698,6 +698,7 @@ function render_content(&$a, $items, $mode, $update, $preview = false) {
                                                        '$edurl' => t('Link'),
                                                        '$edvideo' => t('Video'),
                                                        '$preview' => t('Preview'),
+                                                       '$sourceapp' => t($a->sourcename),
                                                        '$ww' => (($mode === 'network') ? $commentww : '')
                                                ));
                                        }
index 92ffd1a7095c7cc1b07bd8de1978f301fb84aa22..afa61ef026022256304d3e846b2bb9f7b25ea594 100644 (file)
@@ -113,8 +113,9 @@ function display_content(&$a) {
                        );
                }
 
-
-               $o .= conversation($a,$r,'display', false);
+               $items = conv_sort($r,"`commented`");
+               
+               $o .= conversation($a,$items,'display', false);
 
        }
        else {
index 4270ef1133f8cdde128e06f0685f4e48dcda6e1d..b44afe245f5daeb54a617c87b4e1d9217bf870e9 100644 (file)
@@ -123,8 +123,8 @@ function editpost_content(&$a) {
                '$jotnets' => $jotnets,
                '$title' => $itm[0]['title'],
                '$placeholdertitle' => t('Set title'),
-                '$category' => file_tag_file_to_list($itm[0]['file'], 'category'),
-                '$placeholdercategory' => t('Categories (comma-separated list)'),
+               '$category' => file_tag_file_to_list($itm[0]['file'], 'category'),
+               '$placeholdercategory' => t('Categories (comma-separated list)'),
                '$emtitle' => t('Example: bob@example.com, mary@example.com'),
                '$lockstate' => $lockstate,
                '$acl' => '', // populate_acl((($group) ? $group_acl : $a->user), $celeb),
@@ -132,7 +132,7 @@ function editpost_content(&$a) {
                '$profile_uid' => $_SESSION['uid'],
                '$preview' => t('Preview'),
                '$jotplugins' => $jotplugins,
-               '$mobileapp' => t('Friendica mobile web'),
+               '$sourceapp' => t($a->sourcename),
        ));
 
        return $o;
index cb21a71ebe9febc903847618a7d2d1d7421a6e4b..4e4631b85f170b323db9cd30ffb3c81b4f20b6c0 100755 (executable)
@@ -60,7 +60,7 @@ function install_post(&$a) {
 
                        return; 
                        break;
-               case 4;
+               case 4:
                        $urlpath = $a->get_path();
                        $dbhost = notags(trim($_POST['dbhost']));
                        $dbuser = notags(trim($_POST['dbuser']));
@@ -155,11 +155,11 @@ function install_content(&$a) {
        }
 
        if(x($a->data,'txt') && strlen($a->data['txt'])) {
-               $tpl = get_markup_template('install.tpl');
                $db_return_text .= manual_config($a);
        }
        
        if ($db_return_text!="") {
+               $tpl = get_markup_template('install.tpl');
                return replace_macros($tpl, array(
                        '$title' => $install_title,
                        '$pass' => "",
index fddc3fd124aa3dd49acd989ad82889b9ba9b771c..6c1c06f99a901ea505dba9368252285ad821936e 100644 (file)
@@ -79,6 +79,7 @@ function item_post(&$a) {
                // if this isn't the real parent of the conversation, find it
                if($r !== false && count($r)) {
                        $parid = $r[0]['parent'];
+                       $parent_uri = $r[0]['uri'];
                        if($r[0]['id'] != $r[0]['parent']) {
                                $r = q("SELECT * FROM `item` WHERE `id` = `parent` AND `parent` = %d LIMIT 1",
                                        intval($parid)
@@ -96,7 +97,7 @@ function item_post(&$a) {
                $parent = $r[0]['id'];
 
                // multi-level threading - preserve the info but re-parent to our single level threading
-               if(($parid) && ($parid != $parent))
+               //if(($parid) && ($parid != $parent))
                        $thr_parent = $parent_uri;
 
                if($parent_item['contact-id'] && $uid) {
@@ -438,6 +439,7 @@ function item_post(&$a) {
 
        $body = bb_translate_video($body);
 
+
        /**
         * Fold multi-line [code] sequences
         */
@@ -446,6 +448,8 @@ function item_post(&$a) {
 
        $body = scale_external_images($body,false);
 
+
+
        /**
         * Look for any tags and linkify them
         */
@@ -541,6 +545,10 @@ function item_post(&$a) {
 
        $uri = item_new_uri($a->get_hostname(),$profile_uid);
 
+       // Fallback so that we alway have a thr-parent
+       if(!$thr_parent)
+               $thr_parent = $uri;
+
        $datarray = array();
        $datarray['uid']           = $profile_uid;
        $datarray['type']          = $post_type;
@@ -600,7 +608,7 @@ function item_post(&$a) {
 
        if($preview) {
                require_once('include/conversation.php');
-               $o = conversation($a,array(array_merge($contact_record,$datarray)),'search',false,true);
+               $o = conversation($a,array(array_merge($contact_record,$datarray)),'search', false);
                logger('preview: ' . $o);
                echo json_encode(array('preview' => $o));
                killme();
@@ -740,6 +748,7 @@ function item_post(&$a) {
                                        'verb'         => ACTIVITY_POST,
                                        'otype'        => 'item',
                                        'parent'       => $parent,
+                                       'parent_uri'   => $parent_item['uri']
                                ));
                        
                        }
index 83bad29d43647fea02fe1107e175a71dff5b59b4..97c65863209441b3749a4012c69cfc3e6da89dd4 100644 (file)
@@ -351,6 +351,7 @@ function message_content(&$a) {
                                '$body' => template_escape($rr['body']),
                                '$to_name' => template_escape($rr['name']),
                                '$date' => datetime_convert('UTC',date_default_timezone_get(),$rr['mailcreated'], t('D, d M Y - g:i A')),
+                                '$ago' => relative_date($rr['mailcreated']),
                                '$seen' => $rr['mailseen'],
                                '$count' => sprintf( tt('%d message', '%d messages', $rr['count']), $rr['count']),
                        ));
@@ -443,6 +444,7 @@ function message_content(&$a) {
                                'delete' => t('Delete message'),
                                'to_name' => template_escape($message['name']),
                                'date' => datetime_convert('UTC',date_default_timezone_get(),$message['created'],'D, d M Y - g:i A'),
+                                'ago' => relative_date($message['created']),
                        );
                                
                        $seen = $message['seen'];
diff --git a/mod/mood.php b/mod/mood.php
new file mode 100644 (file)
index 0000000..7a793c7
--- /dev/null
@@ -0,0 +1,142 @@
+<?php
+
+require_once('include/security.php');
+require_once('include/bbcode.php');
+require_once('include/items.php');
+
+
+function mood_init(&$a) {
+
+       if(! local_user())
+               return;
+
+       $uid = local_user();
+       $verb = notags(trim($_GET['verb']));
+       
+       if(! $verb) 
+               return;
+
+       $verbs = get_mood_verbs();
+
+       if(! in_array($verb,$verbs))
+               return;
+
+       $activity = ACTIVITY_MOOD . '#' . urlencode($verb);
+
+       $parent = ((x($_GET,'parent')) ? intval($_GET['parent']) : 0);
+
+
+       logger('mood: verb ' . $verb, LOGGER_DEBUG);
+
+
+       if($parent) {
+               $r = q("select uri, private, allow_cid, allow_gid, deny_cid, deny_gid 
+                       from item where id = %d and parent = %d and uid = %d limit 1",
+                       intval($parent),
+                       intval($parent),
+                       intval($uid)
+               );
+               if(count($r)) {
+                       $parent_uri = $r[0]['uri'];
+                       $private    = $r[0]['private'];
+                       $allow_cid  = $r[0]['allow_cid'];
+                       $allow_gid  = $r[0]['allow_gid'];
+                       $deny_cid   = $r[0]['deny_cid'];
+                       $deny_gid   = $r[0]['deny_gid'];
+               }
+       }
+       else {
+
+               $private = 0;
+
+               $allow_cid     =  $a->user['allow_cid'];
+               $allow_gid     =  $a->user['allow_gid'];
+               $deny_cid      =  $a->user['deny_cid'];
+               $deny_gid      =  $a->user['deny_gid'];
+       }
+
+       $poster = $a->contact;
+
+       $uri = item_new_uri($a->get_hostname(),$uid);
+
+       $action = sprintf( t('%1$s is currently %2$s'), '[url=' . $poster['url'] . ']' . $poster['name'] . '[/url]' , $verbs[$verb]); 
+
+       $arr = array();
+
+       $arr['uid']           = $uid;
+       $arr['uri']           = $uri;
+       $arr['parent-uri']    = (($parent_uri) ? $parent_uri : $uri);
+       $arr['type']          = 'activity';
+       $arr['wall']          = 1;
+       $arr['contact-id']    = $poster['id'];
+       $arr['owner-name']    = $poster['name'];
+       $arr['owner-link']    = $poster['url'];
+       $arr['owner-avatar']  = $poster['thumb'];
+       $arr['author-name']   = $poster['name'];
+       $arr['author-link']   = $poster['url'];
+       $arr['author-avatar'] = $poster['thumb'];
+       $arr['title']         = '';
+       $arr['allow_cid']     = $allow_cid;
+       $arr['allow_gid']     = $allow_gid;
+       $arr['deny_cid']      = $deny_cid;
+       $arr['deny_gid']      = $deny_gid;
+       $arr['last-child']    = 1;
+       $arr['visible']       = 1;
+       $arr['verb']          = $activity;
+       $arr['private']       = $private;
+
+       $arr['origin']        = 1;
+       $arr['body']          = $action;
+
+       $item_id = item_store($arr);
+       if($item_id) {
+               q("UPDATE `item` SET `plink` = '%s' WHERE `uid` = %d AND `id` = %d LIMIT 1",
+                       dbesc($a->get_baseurl() . '/display/' . $poster['nickname'] . '/' . $item_id),
+                       intval($uid),
+                       intval($item_id)
+               );
+               proc_run('php',"include/notifier.php","tag","$item_id");
+       }
+
+
+       call_hooks('post_local_end', $arr);
+
+       proc_run('php',"include/notifier.php","like","$post_id");
+
+       return;
+}
+
+
+
+function mood_content(&$a) {
+
+       if(! local_user()) {
+               notice( t('Permission denied.') . EOL);
+               return;
+       }
+
+       $parent = ((x($_GET,'parent')) ? intval($_GET['parent']) : '0');
+
+
+
+       $verbs = get_mood_verbs();
+
+       $shortlist = array();
+       foreach($verbs as $k => $v)
+               if($v !== 'NOTRANSLATION')
+                       $shortlist[] = array($k,$v);
+
+
+       $tpl = get_markup_template('mood_content.tpl');
+
+       $o = replace_macros($tpl,array(
+               '$title' => t('Mood'),
+               '$desc' => t('Set your current mood and tell your friends'),
+               '$verbs' => $shortlist,
+               '$parent' => $parent,
+               '$submit' => t('Submit'),
+       ));
+
+       return $o;
+
+}
\ No newline at end of file
index 17368ab92d1f6ce4d7dd1251073b9cac89e97088..97f00eeda90ecfb1f3bc665793eac035d96fff6b 100644 (file)
@@ -563,7 +563,7 @@ function network_content(&$a, $update = 0) {
 
        }
        else {
-               if(! get_pconfig(local_user(),'system','alt_pager')) {
+               if(! get_pconfig(local_user(),'system','alt_pager')) {
                        $r = q("SELECT COUNT(*) AS `total`
                                FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
                                WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0
@@ -576,10 +576,15 @@ function network_content(&$a, $update = 0) {
                        if(count($r)) {
                                $a->set_pager_total($r[0]['total']);
                        }
-                }
-                $itemspage_network = get_pconfig(local_user(),'system','itemspage_network');
-                $a->set_pager_itemspage(((intval($itemspage_network)) ? $itemspage_network : 40));
-                $pager_sql = sprintf(" LIMIT %d, %d ",intval($a->pager['start']), intval($a->pager['itemspage']));
+               }
+
+               $itemspage_network = get_pconfig(local_user(),'system','itemspage_network');
+               $itemspage_network = ((intval($itemspage_network)) ? $itemspage_network : 40);
+               if(($a->force_max_items > 0) && ($a->force_max_items < $itemspage_network))
+                       $itemspage_network = $a->force_max_items;
+
+               $a->set_pager_itemspage($itemspage_network);
+               $pager_sql = sprintf(" LIMIT %d, %d ",intval($a->pager['start']), intval($a->pager['itemspage']));
        }
 
        $simple_update = (($update) ? " and `item`.`unseen` = 1 " : '');
index a423d11b8fbec3e912700f48a807f8c2c11fadc9..e17a0db037085c55a66abd8e9cf16c9811a18dbe 100644 (file)
@@ -3,7 +3,7 @@
 function newmember_content(&$a) {
 
 
-       $o = '<h3>' . t('Welcome to Friendica') . '</h3>';
+       $o = '<h1>' . t('Welcome to Friendica') . '</h1>';
 
        $o .= '<h3>' . t('New Member Checklist') . '</h3>';
 
@@ -11,39 +11,77 @@ function newmember_content(&$a) {
 
        $o .= t('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.');
 
+       $o .= '<h4>' . t('Getting Started') . '</h4>';
+
+       $o .= '<ul>';
+
+       $o .= '<li> ' . '<a target="newmember" href="help/guide">' . t('Friendica Walk-Through') . '</a><br />' . t('On your <em>Quick Start</em> page - find a brief introduction to your profile and network tabs, make some new connections, and find some groups to join.') . '</li>' . EOL; 
+
+       $o .= '</ul>';
+
+       $o .= '<h4>' . t('Settings') . '</h4>';
+
+       $o .= '<ul>';
+
+       $o .= '<li>' . '<a target="newmember" href="settings">' . t('Go to Your Settings') . '</a><br />' . t('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.') . '</li>' . EOL; 
+
+       $o .= '<li>' . t('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.') . '</li>' . EOL;
+
+       $o .= '</ul>';
+
+       $o .= '<h4>' . t('Profile') . '</h4>';
+
        $o .= '<ul>';
 
-       $o .= '<li>' . '<a target="newmember" href="help/guide">' . t('On your <em>Quick Start</em> page - find a brief introduction to your profile and network tabs, connect to Facebook, make some new connections, and find some groups to join.') . '</a></li>' . EOL; 
+       $o .= '<li>' . '<a target="newmember" href="profile_photo">' . t('Upload Profile Photo') . '</a><br />' . t('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.') . '</li>' . EOL;  
 
-       $o .= '<li>' . '<a target="newmember" href="settings">' . t('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></li>' . EOL; 
+       $o .= '<li>' . '<a target="newmember" href="profiles">' . t('Edit Your Profile') . '</a><br />' . t('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.') . '</li>' . EOL;
 
-       $o .= '<li>' . '<a target="newmember" href="settings">' . t('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></li>' . EOL;
+       $o .= '<li>' . '<a target="newmember" href="profiles">' . t('Profile Keywords') . '</a><br />' . t('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.') . '</li>' . EOL;
 
-       $o .= '<li>' . '<a target="newmember" href="profile_photo">' . t('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></li>' . EOL;  
+       $o .= '</ul>';
+
+       $o .= '<h4>' . t('Connecting') . '</h4>';
+
+       $o .= '<ul>';
 
        if(in_array('facebook', $a->plugins))
-               $o .= '<li>' . '<a target="newmember" href="facebook">' . t("Authorise the Facebook Connector if you currently have a Facebook account and we will \x28optionally\x29 import all your Facebook friends and conversations.") . '</a></li>' . EOL;
+               $o .= '<li>' . '<a target="newmember" href="facebook">' . t('Facebook') . '</a><br />' . t("Authorise the Facebook Connector if you currently have a Facebook account and we will \x28optionally\x29 import all your Facebook friends and conversations.") . '</li>' . EOL;
        else
-               $o .= '<li>' . '<a target="newmember" href="help/Installing-Connectors">' . t("<em>If</em> this is your own personal server, installing the Facebook addon may ease your transition to the free social web.") . '</a></li>' . EOL;
+               $o .= '<li>' . '<a target="newmember" href="help/Installing-Connectors">' . t('Facebook') . '</a><br />' . t("<em>If</em> this is your own personal server, installing the Facebook addon may ease your transition to the free social web.") . '</li>' . EOL;
 
     $mail_disabled = ((function_exists('imap_open') && (! get_config('system','imap_disabled'))) ? 0 : 1);
        
        if(! $mail_disabled)
-               $o .= '<li>' . '<a target="newmember" href="settings/connectors">' .  t('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></li>' . EOL;
+               $o .= '<li>' . '<a target="newmember" href="settings/connectors">' . t('Importing Emails') . '</a><br />' . t('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') . '</li>' . EOL;
 
-       $o .= '<li>' . '<a target="newmember" href="profiles">' . t('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></li>' . EOL;
+       $o .= '<li>' . '<a target="newmember" href="contacts">' . t('Go to Your Contacts Page') . '</a><br />' . t('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.') . '</li>' . EOL;
 
-       $o .= '<li>' . '<a target="newmember" href="profiles">' . t('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></li>' . EOL;
+       $o .= '<li>' . '<a target="newmember" href="directory">' . t("Go to Your Site's Directory") . '</a><br />' . t('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.') . '</li>' . EOL;
 
-       $o .= '<li>' . '<a target="newmember" href="contacts">' . t('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></li>' . EOL;
+       $o .= '<li>' . '<a target="newmember" href="contacts">' . t('Finding New People') . '</a><br />' . t("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.") . '</li>' . EOL;
 
-       $o .= '<li>' . '<a target="newmember" href="directory">' . t('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></li>' . EOL;
+       $o .= '</ul>';
+
+       $o .= '<h4>' . t('Groups') . '</h4>';
+
+       $o .= '<ul>';
 
-       $o .= '<li>' . '<a target="newmember" href="contacts">' . t("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></li>' . EOL;
+       $o .= '<li>' . '<a target="newmember" href="contacts">' . t('Group Your Contacts') . '</a><br />' . t('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.') . '</li>' . EOL;
+
+       if(! get_config('system', 'newuser_public')) {
+               $o .= '<li>' . '<a target="newmember" href="help/Groups-and-Privacy">' . t("Why Aren't My Posts Public?") . '</a><br />' . t("Friendica respects your privacy. By default, your posts will only show up to people you've added as friends. For more information, see the help section from the link above.") . '</li>' . EOL;
+       }
+
+       $o .= '</ul>';
+
+       $o .= '<h4>' . t('Getting Help') . '</h4>';
+
+       $o .= '<ul>';
 
-       $o .= '<li>' . '<a target="newmember" href="contacts">' . t('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></li>' . EOL;
+       $o .= '<li>' . '<a target="newmember" href="help">' . t('Go to the Help Section') . '</a><br />' . t('Our <strong>help</strong> pages may be consulted for detail on other program features and resources.') . '</li>' . EOL;
 
-       $o .= '<li>' . '<a target="newmember" href="help">' . t('Our <strong>help</strong> pages may be consulted for detail on other program features and resources.') . '</a></li>' . EOL;
+       $o .= '</ul>';
 
        $o .= '</div>';
 
index 625bbd2eefa97354d84af10f2561bb13e36c4d4e..afaa60f7016623c91d36432cd303c5b0fcd6140b 100644 (file)
@@ -129,9 +129,13 @@ function notes_content(&$a,$update = false) {
                        intval(local_user()),
                        dbesc($parents_str)
                );
-       }
 
-       $o .= conversation($a,$r,'notes',$update);
+               if(count($r)) {
+                       $items = conv_sort($r,"`commented`");
+
+                       $o .= conversation($a,$items,'notes',$update);
+               }
+       }
 
 
        $o .= paginate($a);
index af40ea30371a43f4e89a1dfdaf56e33487fdcc2d..fa2ddb347734056c37e41356bda0706ab4c88835 100644 (file)
@@ -1324,6 +1324,7 @@ function photos_content(&$a) {
                                                        '$comment' => t('Comment'),
                                                        '$submit' => t('Submit'),
                                                        '$preview' => t('Preview'),
+                                                       '$sourceapp' => t($a->sourcename),
                                                        '$ww' => ''
                                                ));
                                        }
@@ -1363,6 +1364,7 @@ function photos_content(&$a) {
                                                        '$myphoto' => $contact['thumb'],
                                                        '$comment' => t('Comment'),
                                                        '$submit' => t('Submit'),
+                                                       '$sourceapp' => t($a->sourcename),
                                                        '$ww' => ''
                                                ));
                                        }
@@ -1394,6 +1396,7 @@ function photos_content(&$a) {
                                                                '$myphoto' => $contact['thumb'],
                                                                '$comment' => t('Comment'),
                                                                '$submit' => t('Submit'),
+                                                               '$sourceapp' => t($a->sourcename),
                                                                '$ww' => ''
                                                        ));
                                                }
index 5cd88d7e2a8ee5d448a44d74d978eaa777601ce9..edcb27d021f86a721631acf50a4d71971520fb9b 100644 (file)
@@ -73,7 +73,7 @@ function poke_init(&$a) {
 
        $poster = $a->contact;
 
-       $uri = item_new_uri($a->get_hostname(),$owner_uid);
+       $uri = item_new_uri($a->get_hostname(),$uid);
 
        $arr = array();
 
index a3e25b76a119324c1fd5e18b379cab4f83035861..24cadef3b26ae8e6683293a43ce2c60ade8d676f 100644 (file)
@@ -1,8 +1,9 @@
 <?php
 
-function profile_init(&$a) {
+require_once('include/contact_widgets.php');
+
 
-       require_once('include/contact_widgets.php');
+function profile_init(&$a) {
 
        if(! x($a->page,'aside'))
                $a->page['aside'] = '';
@@ -228,21 +229,27 @@ function profile_content(&$a, $update = 0) {
                        $sql_extra2 .= protect_sprintf(sprintf(" AND item.created >= '%s' ", dbesc(datetime_convert(date_default_timezone_get(),'',$datequery2))));
                }
 
-                if(! get_pconfig($a->profile['profile_uid'],'system','alt_pager')) {
-                       $r = q("SELECT COUNT(*) AS `total`
-                               FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
-                               WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0
-                               and `item`.`moderated` = 0 AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 
-                               AND `item`.`id` = `item`.`parent` AND `item`.`wall` = 1
-                               $sql_extra $sql_extra2 ",
-                               intval($a->profile['profile_uid'])
-                       );
-
-                       if(count($r)) {
-                               $a->set_pager_total($r[0]['total']);
-               }
+               if(! get_pconfig($a->profile['profile_uid'],'system','alt_pager')) {
+                   $r = q("SELECT COUNT(*) AS `total`
+                           FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
+                           WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0
+                           and `item`.`moderated` = 0 AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 
+                           AND `item`.`id` = `item`.`parent` AND `item`.`wall` = 1
+                           $sql_extra $sql_extra2 ",
+                           intval($a->profile['profile_uid'])
+                   );
+
+               if(count($r)) {
+                       $a->set_pager_total($r[0]['total']);
+                       }
                }
-               $a->set_pager_itemspage(40);
+
+               $itemspage_network = get_pconfig(local_user(),'system','itemspage_network');
+               $itemspage_network = ((intval($itemspage_network)) ? $itemspage_network : 40);
+               if(($a->force_max_items > 0) && ($a->force_max_items < $itemspage_network))
+                       $itemspage_network = $a->force_max_items;
+
+               $a->set_pager_itemspage($itemspage_network);
 
                $pager_sql = sprintf(" LIMIT %d, %d ",intval($a->pager['start']), intval($a->pager['itemspage']));
 
index 975a8c21273278677be43fbe812959f5bd0f0ebb..74844ff42efad0d6fb5965316facf567a5461d7b 100644 (file)
@@ -48,10 +48,15 @@ function profiles_post(&$a) {
                        
                $name = notags(trim($_POST['name']));
 
+               if(! strlen($name)) {
+                       $name = '[No Name]';
+               }
+
                if($orig[0]['name'] != $name)
                        $namechanged = true;
 
 
+
                $pdesc = notags(trim($_POST['pdesc']));
                $gender = notags(trim($_POST['gender']));
                $address = notags(trim($_POST['address']));
index b8cf95e9c7f4a7f393000cbf8f365756e7f69352..c0244e69751fe141f978d52c3b1310f9af84b694 100644 (file)
@@ -755,7 +755,7 @@ function settings_content(&$a) {
                
                        '$theme'        => array('theme', t('Display Theme:'), $theme_selected, '', $themes),
                        '$ajaxint'   => array('browser_update',  t("Update browser every xx seconds"), $browser_update, t('Minimum of 10 seconds, no maximum')),
-                       '$itemspage_network'   => array('itemspage_network',  t("Number of items to display on the network page:"), $itemspage_network, t('Maximum of 100 items')),
+                       '$itemspage_network'   => array('itemspage_network',  t("Number of items to display per page:"), $itemspage_network, t('Maximum of 100 items')),
                        '$nosmile'      => array('nosmile', t("Don't show emoticons"), $nosmile, ''),
                        
                        '$theme_config' => $theme_config,
index d48b506d176b4310ffe5adaaafe05dd7552b8e3c..f8594b3a37fad703240690fdd2330c17dfa2c124 100644 (file)
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: 3.0.1421\n"
+"Project-Id-Version: 3.0.1449\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-07-31 10:00-0700\n"
+"POT-Creation-Date: 2012-08-28 10:00-0700\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -37,7 +37,7 @@ msgstr ""
 #: ../../mod/crepair.php:115 ../../mod/wall_attach.php:44
 #: ../../mod/fsuggest.php:78 ../../mod/events.php:140 ../../mod/api.php:26
 #: ../../mod/api.php:31 ../../mod/photos.php:116 ../../mod/photos.php:938
-#: ../../mod/editpost.php:10 ../../mod/install.php:151 ../../mod/poke.php:109
+#: ../../mod/editpost.php:10 ../../mod/install.php:151 ../../mod/poke.php:135
 #: ../../mod/notifications.php:66 ../../mod/contacts.php:139
 #: ../../mod/settings.php:86 ../../mod/settings.php:519
 #: ../../mod/settings.php:524 ../../mod/manage.php:86 ../../mod/network.php:6
@@ -45,18 +45,20 @@ msgstr ""
 #: ../../mod/wallmessage.php:33 ../../mod/wallmessage.php:79
 #: ../../mod/wallmessage.php:103 ../../mod/attach.php:33
 #: ../../mod/group.php:19 ../../mod/viewcontacts.php:22
-#: ../../mod/register.php:38 ../../mod/regmod.php:116 ../../mod/item.php:125
-#: ../../mod/item.php:141 ../../mod/profile_photo.php:19
-#: ../../mod/profile_photo.php:142 ../../mod/profile_photo.php:153
-#: ../../mod/profile_photo.php:166 ../../mod/message.php:38
-#: ../../mod/message.php:168 ../../mod/allfriends.php:9
-#: ../../mod/nogroup.php:25 ../../mod/wall_upload.php:53
-#: ../../mod/follow.php:9 ../../mod/display.php:138 ../../mod/profiles.php:7
-#: ../../mod/profiles.php:408 ../../mod/delegate.php:6
+#: ../../mod/register.php:38 ../../mod/regmod.php:116 ../../mod/item.php:126
+#: ../../mod/item.php:142 ../../mod/mood.php:114
+#: ../../mod/profile_photo.php:19 ../../mod/profile_photo.php:142
+#: ../../mod/profile_photo.php:153 ../../mod/profile_photo.php:166
+#: ../../mod/message.php:38 ../../mod/message.php:168
+#: ../../mod/allfriends.php:9 ../../mod/nogroup.php:25
+#: ../../mod/wall_upload.php:53 ../../mod/follow.php:9
+#: ../../mod/display.php:131 ../../mod/profiles.php:7
+#: ../../mod/profiles.php:413 ../../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:510
-#: ../../addon/facebook/facebook.php:516 ../../addon/dav/layout.fnk.php:354
-#: ../../include/items.php:3813 ../../index.php:315
+#: ../../addon/facebook/facebook.php:516
+#: ../../addon/dav/friendica/layout.fnk.php:354 ../../include/items.php:3819
+#: ../../index.php:315
 msgid "Permission denied."
 msgstr ""
 
@@ -86,7 +88,7 @@ msgid "Return to contact editor"
 msgstr ""
 
 #: ../../mod/crepair.php:148 ../../mod/settings.php:539
-#: ../../mod/settings.php:565 ../../mod/admin.php:664 ../../mod/admin.php:673
+#: ../../mod/settings.php:565 ../../mod/admin.php:679 ../../mod/admin.php:688
 msgid "Name"
 msgstr ""
 
@@ -125,16 +127,16 @@ msgstr ""
 #: ../../mod/crepair.php:166 ../../mod/fsuggest.php:107
 #: ../../mod/events.php:439 ../../mod/photos.php:971 ../../mod/photos.php:1042
 #: ../../mod/photos.php:1285 ../../mod/photos.php:1325
-#: ../../mod/photos.php:1365 ../../mod/photos.php:1396
+#: ../../mod/photos.php:1366 ../../mod/photos.php:1398
 #: ../../mod/install.php:246 ../../mod/install.php:284
-#: ../../mod/localtime.php:45 ../../mod/poke.php:169 ../../mod/content.php:691
+#: ../../mod/localtime.php:45 ../../mod/poke.php:199 ../../mod/content.php:691
 #: ../../mod/contacts.php:341 ../../mod/settings.php:537
 #: ../../mod/settings.php:691 ../../mod/settings.php:752
-#: ../../mod/settings.php:958 ../../mod/group.php:85 ../../mod/message.php:294
-#: ../../mod/message.php:478 ../../mod/admin.php:422 ../../mod/admin.php:661
-#: ../../mod/admin.php:797 ../../mod/admin.php:996 ../../mod/admin.php:1083
-#: ../../mod/profiles.php:578 ../../mod/invite.php:119
-#: ../../addon/fromgplus/fromgplus.php:40
+#: ../../mod/settings.php:958 ../../mod/group.php:85 ../../mod/mood.php:137
+#: ../../mod/message.php:294 ../../mod/message.php:478 ../../mod/admin.php:435
+#: ../../mod/admin.php:676 ../../mod/admin.php:812 ../../mod/admin.php:1011
+#: ../../mod/admin.php:1098 ../../mod/profiles.php:583
+#: ../../mod/invite.php:119 ../../addon/fromgplus/fromgplus.php:40
 #: ../../addon/facebook/facebook.php:619
 #: ../../addon/snautofollow/snautofollow.php:64 ../../addon/bg/bg.php:90
 #: ../../addon/yourls/yourls.php:76 ../../addon/ljpost/ljpost.php:93
@@ -172,7 +174,7 @@ msgstr ""
 #: ../../view/theme/diabook/theme.php:757
 #: ../../view/theme/diabook/config.php:190
 #: ../../view/theme/quattro/config.php:52 ../../view/theme/dispy/config.php:70
-#: ../../include/conversation.php:696
+#: ../../include/conversation.php:560
 msgid "Submit"
 msgstr ""
 
@@ -180,7 +182,7 @@ msgstr ""
 msgid "Help:"
 msgstr ""
 
-#: ../../mod/help.php:34 ../../addon/dav/layout.fnk.php:225
+#: ../../mod/help.php:34 ../../addon/dav/friendica/layout.fnk.php:225
 #: ../../include/nav.php:86
 msgid "Help"
 msgstr ""
@@ -227,12 +229,12 @@ msgstr ""
 msgid "Edit event"
 msgstr ""
 
-#: ../../mod/events.php:307 ../../include/text.php:1110
+#: ../../mod/events.php:307 ../../include/text.php:1147
 msgid "link to source"
 msgstr ""
 
 #: ../../mod/events.php:331 ../../view/theme/diabook/theme.php:131
-#: ../../include/nav.php:52 ../../boot.php:1634
+#: ../../include/nav.php:52 ../../boot.php:1659
 msgid "Events"
 msgstr ""
 
@@ -240,12 +242,12 @@ msgstr ""
 msgid "Create New Event"
 msgstr ""
 
-#: ../../mod/events.php:333 ../../addon/dav/layout.fnk.php:263
+#: ../../mod/events.php:333 ../../addon/dav/friendica/layout.fnk.php:263
 msgid "Previous"
 msgstr ""
 
 #: ../../mod/events.php:334 ../../mod/install.php:205
-#: ../../addon/dav/layout.fnk.php:266
+#: ../../addon/dav/friendica/layout.fnk.php:266
 msgid "Next"
 msgstr ""
 
@@ -287,8 +289,8 @@ msgid "Description:"
 msgstr ""
 
 #: ../../mod/events.php:432 ../../mod/directory.php:132
-#: ../../include/event.php:40 ../../include/bb2diaspora.php:447
-#: ../../boot.php:1186
+#: ../../include/event.php:40 ../../include/bb2diaspora.php:455
+#: ../../boot.php:1208
 msgid "Location:"
 msgstr ""
 
@@ -354,7 +356,7 @@ msgstr ""
 #: ../../mod/settings.php:945 ../../mod/settings.php:946
 #: ../../mod/settings.php:947 ../../mod/settings.php:948
 #: ../../mod/settings.php:949 ../../mod/register.php:234
-#: ../../mod/profiles.php:558
+#: ../../mod/profiles.php:563
 msgid "Yes"
 msgstr ""
 
@@ -366,23 +368,23 @@ msgstr ""
 #: ../../mod/settings.php:945 ../../mod/settings.php:946
 #: ../../mod/settings.php:947 ../../mod/settings.php:948
 #: ../../mod/settings.php:949 ../../mod/register.php:235
-#: ../../mod/profiles.php:559
+#: ../../mod/profiles.php:564
 msgid "No"
 msgstr ""
 
-#: ../../mod/photos.php:46 ../../boot.php:1627
+#: ../../mod/photos.php:46 ../../boot.php:1652
 msgid "Photo Albums"
 msgstr ""
 
 #: ../../mod/photos.php:54 ../../mod/photos.php:137 ../../mod/photos.php:952
 #: ../../mod/photos.php:1034 ../../mod/photos.php:1049
-#: ../../mod/photos.php:1474 ../../mod/photos.php:1486
+#: ../../mod/photos.php:1477 ../../mod/photos.php:1489
 #: ../../addon/communityhome/communityhome.php:110
 #: ../../view/theme/diabook/theme.php:598
 msgid "Contact Photos"
 msgstr ""
 
-#: ../../mod/photos.php:61 ../../mod/photos.php:1059 ../../mod/photos.php:1524
+#: ../../mod/photos.php:61 ../../mod/photos.php:1059 ../../mod/photos.php:1527
 msgid "Upload New Photos"
 msgstr ""
 
@@ -423,9 +425,9 @@ msgstr ""
 
 #: ../../mod/photos.php:572 ../../mod/like.php:145 ../../mod/tagger.php:70
 #: ../../addon/communityhome/communityhome.php:163
-#: ../../view/theme/diabook/theme.php:570 ../../include/text.php:1362
-#: ../../include/diaspora.php:1793 ../../include/conversation.php:114
-#: ../../include/conversation.php:230
+#: ../../view/theme/diabook/theme.php:570 ../../include/text.php:1399
+#: ../../include/diaspora.php:1824 ../../include/conversation.php:114
+#: ../../include/conversation.php:244
 msgid "photo"
 msgstr ""
 
@@ -499,7 +501,7 @@ msgstr ""
 msgid "Edit Album"
 msgstr ""
 
-#: ../../mod/photos.php:1077 ../../mod/photos.php:1507
+#: ../../mod/photos.php:1077 ../../mod/photos.php:1510
 msgid "View Photo"
 msgstr ""
 
@@ -524,7 +526,7 @@ msgid "Use as profile photo"
 msgstr ""
 
 #: ../../mod/photos.php:1171 ../../mod/content.php:601
-#: ../../include/conversation.php:606
+#: ../../include/conversation.php:395
 msgid "Private Message"
 msgstr ""
 
@@ -565,57 +567,57 @@ msgid "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping"
 msgstr ""
 
 #: ../../mod/photos.php:1303 ../../mod/content.php:665
-#: ../../include/conversation.php:670
+#: ../../include/conversation.php:534
 msgid "I like this (toggle)"
 msgstr ""
 
 #: ../../mod/photos.php:1304 ../../mod/content.php:666
-#: ../../include/conversation.php:671
+#: ../../include/conversation.php:535
 msgid "I don't like this (toggle)"
 msgstr ""
 
-#: ../../mod/photos.php:1305 ../../include/conversation.php:1128
+#: ../../mod/photos.php:1305 ../../include/conversation.php:1164
 msgid "Share"
 msgstr ""
 
 #: ../../mod/photos.php:1306 ../../mod/editpost.php:112
-#: ../../mod/content.php:482 ../../mod/content.php:842
+#: ../../mod/content.php:482 ../../mod/content.php:843
 #: ../../mod/wallmessage.php:152 ../../mod/message.php:293
-#: ../../mod/message.php:479 ../../include/conversation.php:487
-#: ../../include/conversation.php:847 ../../include/conversation.php:1147
+#: ../../mod/message.php:479 ../../include/conversation.php:628
+#: ../../include/conversation.php:860 ../../include/conversation.php:1183
 msgid "Please wait"
 msgstr ""
 
-#: ../../mod/photos.php:1322 ../../mod/photos.php:1362
-#: ../../mod/photos.php:1393 ../../mod/content.php:688
-#: ../../include/conversation.php:693
+#: ../../mod/photos.php:1322 ../../mod/photos.php:1363
+#: ../../mod/photos.php:1395 ../../mod/content.php:688
+#: ../../include/conversation.php:557
 msgid "This is you"
 msgstr ""
 
-#: ../../mod/photos.php:1324 ../../mod/photos.php:1364
-#: ../../mod/photos.php:1395 ../../mod/content.php:690
-#: ../../include/conversation.php:695 ../../boot.php:569
+#: ../../mod/photos.php:1324 ../../mod/photos.php:1365
+#: ../../mod/photos.php:1397 ../../mod/content.php:690
+#: ../../include/conversation.php:559 ../../boot.php:583
 msgid "Comment"
 msgstr ""
 
 #: ../../mod/photos.php:1326 ../../mod/editpost.php:133
-#: ../../mod/content.php:700 ../../include/conversation.php:705
-#: ../../include/conversation.php:1165
+#: ../../mod/content.php:700 ../../include/conversation.php:569
+#: ../../include/conversation.php:1201
 msgid "Preview"
 msgstr ""
 
-#: ../../mod/photos.php:1423 ../../mod/content.php:439
-#: ../../mod/content.php:720 ../../mod/settings.php:600
-#: ../../mod/settings.php:689 ../../mod/group.php:168 ../../mod/admin.php:668
-#: ../../include/conversation.php:444 ../../include/conversation.php:725
+#: ../../mod/photos.php:1426 ../../mod/content.php:439
+#: ../../mod/content.php:721 ../../mod/settings.php:600
+#: ../../mod/settings.php:689 ../../mod/group.php:168 ../../mod/admin.php:683
+#: ../../include/conversation.php:409 ../../include/conversation.php:816
 msgid "Delete"
 msgstr ""
 
-#: ../../mod/photos.php:1513
+#: ../../mod/photos.php:1516
 msgid "View Album"
 msgstr ""
 
-#: ../../mod/photos.php:1522
+#: ../../mod/photos.php:1525
 msgid "Recent Photos"
 msgstr ""
 
@@ -673,28 +675,28 @@ msgstr ""
 msgid "Edit post"
 msgstr ""
 
-#: ../../mod/editpost.php:88 ../../include/conversation.php:1114
+#: ../../mod/editpost.php:88 ../../include/conversation.php:1150
 msgid "Post to Email"
 msgstr ""
 
-#: ../../mod/editpost.php:103 ../../mod/content.php:707
-#: ../../mod/settings.php:599 ../../include/conversation.php:712
+#: ../../mod/editpost.php:103 ../../mod/content.php:708
+#: ../../mod/settings.php:599 ../../include/conversation.php:400
 msgid "Edit"
 msgstr ""
 
 #: ../../mod/editpost.php:104 ../../mod/wallmessage.php:150
 #: ../../mod/message.php:291 ../../mod/message.php:476
-#: ../../include/conversation.php:1129
+#: ../../include/conversation.php:1165
 msgid "Upload photo"
 msgstr ""
 
-#: ../../mod/editpost.php:105 ../../include/conversation.php:1131
+#: ../../mod/editpost.php:105 ../../include/conversation.php:1167
 msgid "Attach file"
 msgstr ""
 
 #: ../../mod/editpost.php:106 ../../mod/wallmessage.php:151
 #: ../../mod/message.php:292 ../../mod/message.php:477
-#: ../../include/conversation.php:1133
+#: ../../include/conversation.php:1169
 msgid "Insert web link"
 msgstr ""
 
@@ -710,42 +712,38 @@ msgstr ""
 msgid "Insert Vorbis [.ogg] audio"
 msgstr ""
 
-#: ../../mod/editpost.php:110 ../../include/conversation.php:1139
+#: ../../mod/editpost.php:110 ../../include/conversation.php:1175
 msgid "Set your location"
 msgstr ""
 
-#: ../../mod/editpost.php:111 ../../include/conversation.php:1141
+#: ../../mod/editpost.php:111 ../../include/conversation.php:1177
 msgid "Clear browser location"
 msgstr ""
 
-#: ../../mod/editpost.php:113 ../../include/conversation.php:1148
+#: ../../mod/editpost.php:113 ../../include/conversation.php:1184
 msgid "Permission settings"
 msgstr ""
 
-#: ../../mod/editpost.php:121 ../../include/conversation.php:1157
+#: ../../mod/editpost.php:121 ../../include/conversation.php:1193
 msgid "CC: email addresses"
 msgstr ""
 
-#: ../../mod/editpost.php:122 ../../include/conversation.php:1158
+#: ../../mod/editpost.php:122 ../../include/conversation.php:1194
 msgid "Public post"
 msgstr ""
 
-#: ../../mod/editpost.php:125 ../../include/conversation.php:1144
+#: ../../mod/editpost.php:125 ../../include/conversation.php:1180
 msgid "Set title"
 msgstr ""
 
-#: ../../mod/editpost.php:127 ../../include/conversation.php:1146
+#: ../../mod/editpost.php:127 ../../include/conversation.php:1182
 msgid "Categories (comma-separated list)"
 msgstr ""
 
-#: ../../mod/editpost.php:128 ../../include/conversation.php:1160
+#: ../../mod/editpost.php:128 ../../include/conversation.php:1196
 msgid "Example: bob@example.com, mary@example.com"
 msgstr ""
 
-#: ../../mod/editpost.php:135 ../../include/conversation.php:1166
-msgid "Friendica mobile web"
-msgstr ""
-
 #: ../../mod/dfrn_request.php:93
 msgid "This introduction has already been accepted."
 msgstr ""
@@ -863,7 +861,7 @@ msgstr ""
 msgid "Confirm"
 msgstr ""
 
-#: ../../mod/dfrn_request.php:715 ../../include/items.php:3204
+#: ../../mod/dfrn_request.php:715 ../../include/items.php:3210
 msgid "[Name Withheld]"
 msgstr ""
 
@@ -1189,7 +1187,7 @@ msgid ""
 msgstr ""
 
 #: ../../mod/localtime.php:12 ../../include/event.php:11
-#: ../../include/bb2diaspora.php:425
+#: ../../include/bb2diaspora.php:433
 msgid "l F d, Y \\@ g:i A"
 msgstr ""
 
@@ -1222,23 +1220,23 @@ msgstr ""
 msgid "Please select your timezone:"
 msgstr ""
 
-#: ../../mod/poke.php:163
+#: ../../mod/poke.php:192
 msgid "Poke/Prod"
 msgstr ""
 
-#: ../../mod/poke.php:164
+#: ../../mod/poke.php:193
 msgid "poke, prod or do other things to somebody"
 msgstr ""
 
-#: ../../mod/poke.php:165
+#: ../../mod/poke.php:194
 msgid "Recipient"
 msgstr ""
 
-#: ../../mod/poke.php:166
+#: ../../mod/poke.php:195
 msgid "Choose what you wish to do to recipient"
 msgstr ""
 
-#: ../../mod/poke.php:168
+#: ../../mod/poke.php:198
 msgid "Make this post private"
 msgstr ""
 
@@ -1255,7 +1253,7 @@ msgid "is interested in:"
 msgstr ""
 
 #: ../../mod/match.php:58 ../../mod/suggest.php:59
-#: ../../include/contact_widgets.php:9 ../../boot.php:1130
+#: ../../include/contact_widgets.php:9 ../../boot.php:1152
 msgid "Connect"
 msgstr ""
 
@@ -1283,29 +1281,29 @@ msgstr ""
 msgid "Group: "
 msgstr ""
 
-#: ../../mod/content.php:438 ../../mod/content.php:719
-#: ../../include/conversation.php:443 ../../include/conversation.php:724
+#: ../../mod/content.php:438 ../../mod/content.php:720
+#: ../../include/conversation.php:408 ../../include/conversation.php:815
 msgid "Select"
 msgstr ""
 
-#: ../../mod/content.php:455 ../../mod/content.php:812
-#: ../../mod/content.php:813 ../../include/conversation.php:460
-#: ../../include/conversation.php:817 ../../include/conversation.php:818
+#: ../../mod/content.php:455 ../../mod/content.php:813
+#: ../../mod/content.php:814 ../../include/conversation.php:596
+#: ../../include/conversation.php:597 ../../include/conversation.php:832
 #, php-format
 msgid "View %s's profile @ %s"
 msgstr ""
 
-#: ../../mod/content.php:465 ../../mod/content.php:824
-#: ../../include/conversation.php:470 ../../include/conversation.php:829
+#: ../../mod/content.php:465 ../../mod/content.php:825
+#: ../../include/conversation.php:610 ../../include/conversation.php:843
 #, php-format
 msgid "%s from %s"
 msgstr ""
 
-#: ../../mod/content.php:480 ../../include/conversation.php:485
+#: ../../mod/content.php:480 ../../include/conversation.php:858
 msgid "View in context"
 msgstr ""
 
-#: ../../mod/content.php:586 ../../include/conversation.php:591
+#: ../../mod/content.php:586 ../../include/conversation.php:637
 #, php-format
 msgid "%d comment"
 msgid_plural "%d comments"
@@ -1314,92 +1312,92 @@ msgstr[1] ""
 
 #: ../../mod/content.php:587 ../../addon/page/page.php:76
 #: ../../addon/page/page.php:110 ../../addon/showmore/showmore.php:119
-#: ../../include/contact_widgets.php:188 ../../include/conversation.php:592
-#: ../../boot.php:570
+#: ../../include/contact_widgets.php:188 ../../include/conversation.php:638
+#: ../../boot.php:584
 msgid "show more"
 msgstr ""
 
-#: ../../mod/content.php:665 ../../include/conversation.php:670
+#: ../../mod/content.php:665 ../../include/conversation.php:534
 msgid "like"
 msgstr ""
 
-#: ../../mod/content.php:666 ../../include/conversation.php:671
+#: ../../mod/content.php:666 ../../include/conversation.php:535
 msgid "dislike"
 msgstr ""
 
-#: ../../mod/content.php:668 ../../include/conversation.php:673
+#: ../../mod/content.php:668 ../../include/conversation.php:537
 msgid "Share this"
 msgstr ""
 
-#: ../../mod/content.php:668 ../../include/conversation.php:673
+#: ../../mod/content.php:668 ../../include/conversation.php:537
 msgid "share"
 msgstr ""
 
-#: ../../mod/content.php:692 ../../include/conversation.php:697
+#: ../../mod/content.php:692 ../../include/conversation.php:561
 msgid "Bold"
 msgstr ""
 
-#: ../../mod/content.php:693 ../../include/conversation.php:698
+#: ../../mod/content.php:693 ../../include/conversation.php:562
 msgid "Italic"
 msgstr ""
 
-#: ../../mod/content.php:694 ../../include/conversation.php:699
+#: ../../mod/content.php:694 ../../include/conversation.php:563
 msgid "Underline"
 msgstr ""
 
-#: ../../mod/content.php:695 ../../include/conversation.php:700
+#: ../../mod/content.php:695 ../../include/conversation.php:564
 msgid "Quote"
 msgstr ""
 
-#: ../../mod/content.php:696 ../../include/conversation.php:701
+#: ../../mod/content.php:696 ../../include/conversation.php:565
 msgid "Code"
 msgstr ""
 
-#: ../../mod/content.php:697 ../../include/conversation.php:702
+#: ../../mod/content.php:697 ../../include/conversation.php:566
 msgid "Image"
 msgstr ""
 
-#: ../../mod/content.php:698 ../../include/conversation.php:703
+#: ../../mod/content.php:698 ../../include/conversation.php:567
 msgid "Link"
 msgstr ""
 
-#: ../../mod/content.php:699 ../../include/conversation.php:704
+#: ../../mod/content.php:699 ../../include/conversation.php:568
 msgid "Video"
 msgstr ""
 
-#: ../../mod/content.php:732 ../../include/conversation.php:737
+#: ../../mod/content.php:733 ../../include/conversation.php:498
 msgid "add star"
 msgstr ""
 
-#: ../../mod/content.php:733 ../../include/conversation.php:738
+#: ../../mod/content.php:734 ../../include/conversation.php:499
 msgid "remove star"
 msgstr ""
 
-#: ../../mod/content.php:734 ../../include/conversation.php:739
+#: ../../mod/content.php:735 ../../include/conversation.php:500
 msgid "toggle star status"
 msgstr ""
 
-#: ../../mod/content.php:737 ../../include/conversation.php:742
+#: ../../mod/content.php:738 ../../include/conversation.php:503
 msgid "starred"
 msgstr ""
 
-#: ../../mod/content.php:738 ../../include/conversation.php:743
+#: ../../mod/content.php:739 ../../include/conversation.php:504
 msgid "add tag"
 msgstr ""
 
-#: ../../mod/content.php:742 ../../include/conversation.php:747
+#: ../../mod/content.php:743 ../../include/conversation.php:412
 msgid "save to folder"
 msgstr ""
 
-#: ../../mod/content.php:814 ../../include/conversation.php:819
+#: ../../mod/content.php:815 ../../include/conversation.php:598
 msgid "to"
 msgstr ""
 
-#: ../../mod/content.php:815 ../../include/conversation.php:820
+#: ../../mod/content.php:816 ../../include/conversation.php:599
 msgid "Wall-to-Wall"
 msgstr ""
 
-#: ../../mod/content.php:816 ../../include/conversation.php:821
+#: ../../mod/content.php:817 ../../include/conversation.php:600
 msgid "via Wall-To-Wall:"
 msgstr ""
 
@@ -1484,7 +1482,7 @@ msgid "if applicable"
 msgstr ""
 
 #: ../../mod/notifications.php:157 ../../mod/notifications.php:204
-#: ../../mod/admin.php:666
+#: ../../mod/admin.php:681
 msgid "Approve"
 msgstr ""
 
@@ -1685,12 +1683,12 @@ msgid "View all contacts"
 msgstr ""
 
 #: ../../mod/contacts.php:308 ../../mod/contacts.php:367
-#: ../../mod/admin.php:670
+#: ../../mod/admin.php:685
 msgid "Unblock"
 msgstr ""
 
 #: ../../mod/contacts.php:308 ../../mod/contacts.php:367
-#: ../../mod/admin.php:669
+#: ../../mod/admin.php:684
 msgid "Block"
 msgstr ""
 
@@ -1787,7 +1785,7 @@ msgstr ""
 msgid "Update public posts"
 msgstr ""
 
-#: ../../mod/contacts.php:364 ../../mod/admin.php:1141
+#: ../../mod/contacts.php:364 ../../mod/admin.php:1156
 msgid "Update now"
 msgstr ""
 
@@ -1917,8 +1915,8 @@ msgstr ""
 #: ../../addon/facebook/facebook.php:702
 #: ../../addon/facebook/facebook.php:1200
 #: ../../addon/public_server/public_server.php:62
-#: ../../addon/testdrive/testdrive.php:67 ../../include/items.php:3213
-#: ../../boot.php:779
+#: ../../addon/testdrive/testdrive.php:67 ../../include/items.php:3219
+#: ../../boot.php:797
 msgid "Administrator"
 msgstr ""
 
@@ -1928,7 +1926,7 @@ msgid ""
 "Password reset failed."
 msgstr ""
 
-#: ../../mod/lostpass.php:83 ../../boot.php:912
+#: ../../mod/lostpass.php:83 ../../boot.php:934
 msgid "Password Reset"
 msgstr ""
 
@@ -2000,9 +1998,9 @@ msgstr ""
 msgid "Remove account"
 msgstr ""
 
-#: ../../mod/settings.php:69 ../../mod/admin.php:756 ../../mod/admin.php:961
-#: ../../addon/dav/layout.fnk.php:225 ../../addon/mathjax/mathjax.php:36
-#: ../../view/theme/diabook/theme.php:643
+#: ../../mod/settings.php:69 ../../mod/admin.php:771 ../../mod/admin.php:976
+#: ../../addon/dav/friendica/layout.fnk.php:225
+#: ../../addon/mathjax/mathjax.php:36 ../../view/theme/diabook/theme.php:643
 #: ../../view/theme/diabook/theme.php:773 ../../include/nav.php:137
 msgid "Settings"
 msgstr ""
@@ -2596,15 +2594,15 @@ msgstr ""
 msgid "Invalid contact."
 msgstr ""
 
-#: ../../mod/notes.php:44 ../../boot.php:1641
+#: ../../mod/notes.php:44 ../../boot.php:1666
 msgid "Personal Notes"
 msgstr ""
 
 #: ../../mod/notes.php:63 ../../mod/filer.php:30
 #: ../../addon/facebook/facebook.php:770
-#: ../../addon/privacy_image_cache/privacy_image_cache.php:236
-#: ../../addon/dav/layout.fnk.php:441 ../../addon/dav/layout.fnk.php:488
-#: ../../include/text.php:677
+#: ../../addon/privacy_image_cache/privacy_image_cache.php:263
+#: ../../addon/dav/friendica/layout.fnk.php:441
+#: ../../addon/dav/friendica/layout.fnk.php:488 ../../include/text.php:681
 msgid "Save"
 msgstr ""
 
@@ -2639,7 +2637,7 @@ msgstr ""
 
 #: ../../mod/wallmessage.php:123 ../../mod/wallmessage.php:131
 #: ../../mod/message.php:242 ../../mod/message.php:250
-#: ../../include/conversation.php:1065 ../../include/conversation.php:1082
+#: ../../include/conversation.php:1101 ../../include/conversation.php:1118
 msgid "Please enter a link URL:"
 msgstr ""
 
@@ -2688,8 +2686,8 @@ msgstr ""
 #: ../../mod/newmember.php:16
 msgid ""
 "On your <em>Quick Start</em> page - find a brief introduction to your "
-"profile and network tabs, connect to Facebook, make some new connections, "
-"and find some groups to join."
+"profile and network tabs, make some new connections, and find some groups to "
+"join."
 msgstr ""
 
 #: ../../mod/newmember.php:18
@@ -2849,7 +2847,7 @@ msgstr ""
 
 #: ../../mod/profperm.php:103 ../../view/theme/diabook/theme.php:128
 #: ../../include/profile_advanced.php:7 ../../include/profile_advanced.php:84
-#: ../../include/nav.php:50 ../../boot.php:1617
+#: ../../include/nav.php:50 ../../boot.php:1642
 msgid "Profile"
 msgstr ""
 
@@ -2865,7 +2863,7 @@ msgstr ""
 msgid "No contacts."
 msgstr ""
 
-#: ../../mod/viewcontacts.php:76 ../../include/text.php:614
+#: ../../mod/viewcontacts.php:76 ../../include/text.php:618
 msgid "View Contacts"
 msgstr ""
 
@@ -2930,7 +2928,7 @@ msgstr ""
 msgid "Your invitation ID: "
 msgstr ""
 
-#: ../../mod/register.php:255 ../../mod/admin.php:423
+#: ../../mod/register.php:255 ../../mod/admin.php:436
 msgid "Registration"
 msgstr ""
 
@@ -2953,7 +2951,7 @@ msgstr ""
 msgid "Choose a nickname: "
 msgstr ""
 
-#: ../../mod/register.php:269 ../../include/nav.php:81 ../../boot.php:878
+#: ../../mod/register.php:269 ../../include/nav.php:81 ../../boot.php:896
 msgid "Register"
 msgstr ""
 
@@ -2966,15 +2964,15 @@ msgstr ""
 #: ../../addon/communityhome/communityhome.php:158
 #: ../../addon/communityhome/communityhome.php:167
 #: ../../view/theme/diabook/theme.php:565
-#: ../../view/theme/diabook/theme.php:574 ../../include/diaspora.php:1793
+#: ../../view/theme/diabook/theme.php:574 ../../include/diaspora.php:1824
 #: ../../include/conversation.php:109 ../../include/conversation.php:118
-#: ../../include/conversation.php:225 ../../include/conversation.php:234
+#: ../../include/conversation.php:239 ../../include/conversation.php:248
 msgid "status"
 msgstr ""
 
 #: ../../mod/like.php:162 ../../addon/facebook/facebook.php:1598
 #: ../../addon/communityhome/communityhome.php:172
-#: ../../view/theme/diabook/theme.php:579 ../../include/diaspora.php:1809
+#: ../../view/theme/diabook/theme.php:579 ../../include/diaspora.php:1840
 #: ../../include/conversation.php:126
 #, php-format
 msgid "%1$s likes %2$s's %3$s"
@@ -2986,8 +2984,8 @@ msgid "%1$s doesn't like %2$s's %3$s"
 msgstr ""
 
 #: ../../mod/notice.php:15 ../../mod/viewsrc.php:15 ../../mod/admin.php:159
-#: ../../mod/admin.php:705 ../../mod/admin.php:904 ../../mod/display.php:37
-#: ../../mod/display.php:142 ../../include/items.php:3692
+#: ../../mod/admin.php:720 ../../mod/admin.php:919 ../../mod/display.php:29
+#: ../../mod/display.php:135 ../../include/items.php:3697
 msgid "Item not found."
 msgstr ""
 
@@ -2996,7 +2994,7 @@ msgid "Access denied."
 msgstr ""
 
 #: ../../mod/fbrowser.php:25 ../../view/theme/diabook/theme.php:130
-#: ../../include/nav.php:51 ../../boot.php:1624
+#: ../../include/nav.php:51 ../../boot.php:1649
 msgid "Photos"
 msgstr ""
 
@@ -3017,46 +3015,59 @@ msgstr ""
 msgid "Please login."
 msgstr ""
 
-#: ../../mod/item.php:90
+#: ../../mod/item.php:91
 msgid "Unable to locate original post."
 msgstr ""
 
-#: ../../mod/item.php:274
+#: ../../mod/item.php:275
 msgid "Empty post discarded."
 msgstr ""
 
-#: ../../mod/item.php:395 ../../mod/wall_upload.php:122
+#: ../../mod/item.php:396 ../../mod/wall_upload.php:122
 #: ../../mod/wall_upload.php:131 ../../mod/wall_upload.php:138
 #: ../../include/message.php:144
 msgid "Wall Photos"
 msgstr ""
 
-#: ../../mod/item.php:800
+#: ../../mod/item.php:809
 msgid "System error. Post not saved."
 msgstr ""
 
-#: ../../mod/item.php:825
+#: ../../mod/item.php:834
 #, php-format
 msgid ""
 "This message was sent to you by %s, a member of the Friendica social network."
 msgstr ""
 
-#: ../../mod/item.php:827
+#: ../../mod/item.php:836
 #, php-format
 msgid "You may visit them online at %s"
 msgstr ""
 
-#: ../../mod/item.php:828
+#: ../../mod/item.php:837
 msgid ""
 "Please contact the sender by replying to this post if you do not wish to "
 "receive these messages."
 msgstr ""
 
-#: ../../mod/item.php:830
+#: ../../mod/item.php:839
 #, php-format
 msgid "%s posted an update."
 msgstr ""
 
+#: ../../mod/mood.php:62 ../../include/conversation.php:217
+#, php-format
+msgid "%1$s is currently %2$s"
+msgstr ""
+
+#: ../../mod/mood.php:133
+msgid "Mood"
+msgstr ""
+
+#: ../../mod/mood.php:134
+msgid "Set your current mood and tell your friends"
+msgstr ""
+
 #: ../../mod/profile_photo.php:30
 msgid "Image uploaded but image cropping failed."
 msgstr ""
@@ -3090,7 +3101,8 @@ msgstr ""
 msgid "Upload Profile Photo"
 msgstr ""
 
-#: ../../mod/profile_photo.php:212 ../../addon/dav/layout.fnk.php:152
+#: ../../mod/profile_photo.php:212
+#: ../../addon/dav/friendica/layout.fnk.php:152
 msgid "Upload"
 msgstr ""
 
@@ -3217,19 +3229,19 @@ msgstr ""
 msgid "Theme settings updated."
 msgstr ""
 
-#: ../../mod/admin.php:96 ../../mod/admin.php:421
+#: ../../mod/admin.php:96 ../../mod/admin.php:434
 msgid "Site"
 msgstr ""
 
-#: ../../mod/admin.php:97 ../../mod/admin.php:660 ../../mod/admin.php:672
+#: ../../mod/admin.php:97 ../../mod/admin.php:675 ../../mod/admin.php:687
 msgid "Users"
 msgstr ""
 
-#: ../../mod/admin.php:98 ../../mod/admin.php:754 ../../mod/admin.php:796
+#: ../../mod/admin.php:98 ../../mod/admin.php:769 ../../mod/admin.php:811
 msgid "Plugins"
 msgstr ""
 
-#: ../../mod/admin.php:99 ../../mod/admin.php:959 ../../mod/admin.php:995
+#: ../../mod/admin.php:99 ../../mod/admin.php:974 ../../mod/admin.php:1010
 msgid "Themes"
 msgstr ""
 
@@ -3237,7 +3249,7 @@ msgstr ""
 msgid "DB updates"
 msgstr ""
 
-#: ../../mod/admin.php:115 ../../mod/admin.php:122 ../../mod/admin.php:1082
+#: ../../mod/admin.php:115 ../../mod/admin.php:122 ../../mod/admin.php:1097
 msgid "Logs"
 msgstr ""
 
@@ -3253,19 +3265,19 @@ msgstr ""
 msgid "User registrations waiting for confirmation"
 msgstr ""
 
-#: ../../mod/admin.php:183 ../../mod/admin.php:642
+#: ../../mod/admin.php:183 ../../mod/admin.php:657
 msgid "Normal Account"
 msgstr ""
 
-#: ../../mod/admin.php:184 ../../mod/admin.php:643
+#: ../../mod/admin.php:184 ../../mod/admin.php:658
 msgid "Soapbox Account"
 msgstr ""
 
-#: ../../mod/admin.php:185 ../../mod/admin.php:644
+#: ../../mod/admin.php:185 ../../mod/admin.php:659
 msgid "Community/Celebrity Account"
 msgstr ""
 
-#: ../../mod/admin.php:186 ../../mod/admin.php:645
+#: ../../mod/admin.php:186 ../../mod/admin.php:660
 msgid "Automatic Friend Account"
 msgstr ""
 
@@ -3281,9 +3293,9 @@ msgstr ""
 msgid "Message queues"
 msgstr ""
 
-#: ../../mod/admin.php:212 ../../mod/admin.php:420 ../../mod/admin.php:659
-#: ../../mod/admin.php:753 ../../mod/admin.php:795 ../../mod/admin.php:958
-#: ../../mod/admin.php:994 ../../mod/admin.php:1081
+#: ../../mod/admin.php:212 ../../mod/admin.php:433 ../../mod/admin.php:674
+#: ../../mod/admin.php:768 ../../mod/admin.php:810 ../../mod/admin.php:973
+#: ../../mod/admin.php:1009 ../../mod/admin.php:1096
 msgid "Administration"
 msgstr ""
 
@@ -3307,515 +3319,535 @@ msgstr ""
 msgid "Active plugins"
 msgstr ""
 
-#: ../../mod/admin.php:359
+#: ../../mod/admin.php:367
 msgid "Site settings updated."
 msgstr ""
 
-#: ../../mod/admin.php:407
+#: ../../mod/admin.php:396
+msgid "Don't apply a special theme for mobile devices."
+msgstr ""
+
+#: ../../mod/admin.php:420
 msgid "Closed"
 msgstr ""
 
-#: ../../mod/admin.php:408
+#: ../../mod/admin.php:421
 msgid "Requires approval"
 msgstr ""
 
-#: ../../mod/admin.php:409
+#: ../../mod/admin.php:422
 msgid "Open"
 msgstr ""
 
-#: ../../mod/admin.php:413
+#: ../../mod/admin.php:426
 msgid "No SSL policy, links will track page SSL state"
 msgstr ""
 
-#: ../../mod/admin.php:414
+#: ../../mod/admin.php:427
 msgid "Force all links to use SSL"
 msgstr ""
 
-#: ../../mod/admin.php:415
+#: ../../mod/admin.php:428
 msgid "Self-signed certificate, use SSL for local links only (discouraged)"
 msgstr ""
 
-#: ../../mod/admin.php:424
+#: ../../mod/admin.php:437
 msgid "File upload"
 msgstr ""
 
-#: ../../mod/admin.php:425
+#: ../../mod/admin.php:438
 msgid "Policies"
 msgstr ""
 
-#: ../../mod/admin.php:426
+#: ../../mod/admin.php:439
 msgid "Advanced"
 msgstr ""
 
-#: ../../mod/admin.php:430 ../../addon/statusnet/statusnet.php:567
+#: ../../mod/admin.php:443 ../../addon/statusnet/statusnet.php:567
 msgid "Site name"
 msgstr ""
 
-#: ../../mod/admin.php:431
+#: ../../mod/admin.php:444
 msgid "Banner/Logo"
 msgstr ""
 
-#: ../../mod/admin.php:432
+#: ../../mod/admin.php:445
 msgid "System language"
 msgstr ""
 
-#: ../../mod/admin.php:433
+#: ../../mod/admin.php:446
 msgid "System theme"
 msgstr ""
 
-#: ../../mod/admin.php:433
+#: ../../mod/admin.php:446
 msgid ""
 "Default system theme - may be over-ridden by user profiles - <a href='#' "
 "id='cnftheme'>change theme settings</a>"
 msgstr ""
 
-#: ../../mod/admin.php:434
+#: ../../mod/admin.php:447
+msgid "Mobile system theme"
+msgstr ""
+
+#: ../../mod/admin.php:447
+msgid "Theme for mobile devices"
+msgstr ""
+
+#: ../../mod/admin.php:448
 msgid "SSL link policy"
 msgstr ""
 
-#: ../../mod/admin.php:434
+#: ../../mod/admin.php:448
 msgid "Determines whether generated links should be forced to use SSL"
 msgstr ""
 
-#: ../../mod/admin.php:435
+#: ../../mod/admin.php:449
 msgid "Maximum image size"
 msgstr ""
 
-#: ../../mod/admin.php:435
+#: ../../mod/admin.php:449
 msgid ""
 "Maximum size in bytes of uploaded images. Default is 0, which means no "
 "limits."
 msgstr ""
 
-#: ../../mod/admin.php:437
+#: ../../mod/admin.php:451
 msgid "Register policy"
 msgstr ""
 
-#: ../../mod/admin.php:438
+#: ../../mod/admin.php:452
 msgid "Register text"
 msgstr ""
 
-#: ../../mod/admin.php:438
+#: ../../mod/admin.php:452
 msgid "Will be displayed prominently on the registration page."
 msgstr ""
 
-#: ../../mod/admin.php:439
+#: ../../mod/admin.php:453
 msgid "Accounts abandoned after x days"
 msgstr ""
 
-#: ../../mod/admin.php:439
+#: ../../mod/admin.php:453
 msgid ""
 "Will not waste system resources polling external sites for abandonded "
 "accounts. Enter 0 for no time limit."
 msgstr ""
 
-#: ../../mod/admin.php:440
+#: ../../mod/admin.php:454
 msgid "Allowed friend domains"
 msgstr ""
 
-#: ../../mod/admin.php:440
+#: ../../mod/admin.php:454
 msgid ""
 "Comma separated list of domains which are allowed to establish friendships "
 "with this site. Wildcards are accepted. Empty to allow any domains"
 msgstr ""
 
-#: ../../mod/admin.php:441
+#: ../../mod/admin.php:455
 msgid "Allowed email domains"
 msgstr ""
 
-#: ../../mod/admin.php:441
+#: ../../mod/admin.php:455
 msgid ""
 "Comma separated list of domains which are allowed in email addresses for "
 "registrations to this site. Wildcards are accepted. Empty to allow any "
 "domains"
 msgstr ""
 
-#: ../../mod/admin.php:442
+#: ../../mod/admin.php:456
 msgid "Block public"
 msgstr ""
 
-#: ../../mod/admin.php:442
+#: ../../mod/admin.php:456
 msgid ""
 "Check to block public access to all otherwise public personal pages on this "
 "site unless you are currently logged in."
 msgstr ""
 
-#: ../../mod/admin.php:443
+#: ../../mod/admin.php:457
 msgid "Force publish"
 msgstr ""
 
-#: ../../mod/admin.php:443
+#: ../../mod/admin.php:457
 msgid ""
 "Check to force all profiles on this site to be listed in the site directory."
 msgstr ""
 
-#: ../../mod/admin.php:444
+#: ../../mod/admin.php:458
 msgid "Global directory update URL"
 msgstr ""
 
-#: ../../mod/admin.php:444
+#: ../../mod/admin.php:458
 msgid ""
 "URL to update the global directory. If this is not set, the global directory "
 "is completely unavailable to the application."
 msgstr ""
 
-#: ../../mod/admin.php:446
+#: ../../mod/admin.php:459
+msgid "Allow threaded items"
+msgstr ""
+
+#: ../../mod/admin.php:459
+msgid "Allow infinite level threading for items on this site."
+msgstr ""
+
+#: ../../mod/admin.php:461
 msgid "Block multiple registrations"
 msgstr ""
 
-#: ../../mod/admin.php:446
+#: ../../mod/admin.php:461
 msgid "Disallow users to register additional accounts for use as pages."
 msgstr ""
 
-#: ../../mod/admin.php:447
+#: ../../mod/admin.php:462
 msgid "OpenID support"
 msgstr ""
 
-#: ../../mod/admin.php:447
+#: ../../mod/admin.php:462
 msgid "OpenID support for registration and logins."
 msgstr ""
 
-#: ../../mod/admin.php:448
+#: ../../mod/admin.php:463
 msgid "Fullname check"
 msgstr ""
 
-#: ../../mod/admin.php:448
+#: ../../mod/admin.php:463
 msgid ""
 "Force users to register with a space between firstname and lastname in Full "
 "name, as an antispam measure"
 msgstr ""
 
-#: ../../mod/admin.php:449
+#: ../../mod/admin.php:464
 msgid "UTF-8 Regular expressions"
 msgstr ""
 
-#: ../../mod/admin.php:449
+#: ../../mod/admin.php:464
 msgid "Use PHP UTF8 regular expressions"
 msgstr ""
 
-#: ../../mod/admin.php:450
+#: ../../mod/admin.php:465
 msgid "Show Community Page"
 msgstr ""
 
-#: ../../mod/admin.php:450
+#: ../../mod/admin.php:465
 msgid ""
 "Display a Community page showing all recent public postings on this site."
 msgstr ""
 
-#: ../../mod/admin.php:451
+#: ../../mod/admin.php:466
 msgid "Enable OStatus support"
 msgstr ""
 
-#: ../../mod/admin.php:451
+#: ../../mod/admin.php:466
 msgid ""
 "Provide built-in OStatus (identi.ca, status.net, etc.) compatibility. All "
 "communications in OStatus are public, so privacy warnings will be "
 "occasionally displayed."
 msgstr ""
 
-#: ../../mod/admin.php:452
+#: ../../mod/admin.php:467
 msgid "Enable Diaspora support"
 msgstr ""
 
-#: ../../mod/admin.php:452
+#: ../../mod/admin.php:467
 msgid "Provide built-in Diaspora network compatibility."
 msgstr ""
 
-#: ../../mod/admin.php:453
+#: ../../mod/admin.php:468
 msgid "Only allow Friendica contacts"
 msgstr ""
 
-#: ../../mod/admin.php:453
+#: ../../mod/admin.php:468
 msgid ""
 "All contacts must use Friendica protocols. All other built-in communication "
 "protocols disabled."
 msgstr ""
 
-#: ../../mod/admin.php:454
+#: ../../mod/admin.php:469
 msgid "Verify SSL"
 msgstr ""
 
-#: ../../mod/admin.php:454
+#: ../../mod/admin.php:469
 msgid ""
 "If you wish, you can turn on strict certificate checking. This will mean you "
 "cannot connect (at all) to self-signed SSL sites."
 msgstr ""
 
-#: ../../mod/admin.php:455
+#: ../../mod/admin.php:470
 msgid "Proxy user"
 msgstr ""
 
-#: ../../mod/admin.php:456
+#: ../../mod/admin.php:471
 msgid "Proxy URL"
 msgstr ""
 
-#: ../../mod/admin.php:457
+#: ../../mod/admin.php:472
 msgid "Network timeout"
 msgstr ""
 
-#: ../../mod/admin.php:457
+#: ../../mod/admin.php:472
 msgid "Value is in seconds. Set to 0 for unlimited (not recommended)."
 msgstr ""
 
-#: ../../mod/admin.php:458
+#: ../../mod/admin.php:473
 msgid "Delivery interval"
 msgstr ""
 
-#: ../../mod/admin.php:458
+#: ../../mod/admin.php:473
 msgid ""
 "Delay background delivery processes by this many seconds to reduce system "
 "load. Recommend: 4-5 for shared hosts, 2-3 for virtual private servers. 0-1 "
 "for large dedicated servers."
 msgstr ""
 
-#: ../../mod/admin.php:459
+#: ../../mod/admin.php:474
 msgid "Poll interval"
 msgstr ""
 
-#: ../../mod/admin.php:459
+#: ../../mod/admin.php:474
 msgid ""
 "Delay background polling processes by this many seconds to reduce system "
 "load. If 0, use delivery interval."
 msgstr ""
 
-#: ../../mod/admin.php:460
+#: ../../mod/admin.php:475
 msgid "Maximum Load Average"
 msgstr ""
 
-#: ../../mod/admin.php:460
+#: ../../mod/admin.php:475
 msgid ""
 "Maximum system load before delivery and poll processes are deferred - "
 "default 50."
 msgstr ""
 
-#: ../../mod/admin.php:477
+#: ../../mod/admin.php:492
 msgid "Update has been marked successful"
 msgstr ""
 
-#: ../../mod/admin.php:487
+#: ../../mod/admin.php:502
 #, php-format
 msgid "Executing %s failed. Check system logs."
 msgstr ""
 
-#: ../../mod/admin.php:490
+#: ../../mod/admin.php:505
 #, php-format
 msgid "Update %s was successfully applied."
 msgstr ""
 
-#: ../../mod/admin.php:494
+#: ../../mod/admin.php:509
 #, php-format
 msgid "Update %s did not return a status. Unknown if it succeeded."
 msgstr ""
 
-#: ../../mod/admin.php:497
+#: ../../mod/admin.php:512
 #, php-format
 msgid "Update function %s could not be found."
 msgstr ""
 
-#: ../../mod/admin.php:512
+#: ../../mod/admin.php:527
 msgid "No failed updates."
 msgstr ""
 
-#: ../../mod/admin.php:516
+#: ../../mod/admin.php:531
 msgid "Failed Updates"
 msgstr ""
 
-#: ../../mod/admin.php:517
+#: ../../mod/admin.php:532
 msgid ""
 "This does not include updates prior to 1139, which did not return a status."
 msgstr ""
 
-#: ../../mod/admin.php:518
+#: ../../mod/admin.php:533
 msgid "Mark success (if update was manually applied)"
 msgstr ""
 
-#: ../../mod/admin.php:519
+#: ../../mod/admin.php:534
 msgid "Attempt to execute this update step automatically"
 msgstr ""
 
-#: ../../mod/admin.php:544
+#: ../../mod/admin.php:559
 #, php-format
 msgid "%s user blocked/unblocked"
 msgid_plural "%s users blocked/unblocked"
 msgstr[0] ""
 msgstr[1] ""
 
-#: ../../mod/admin.php:551
+#: ../../mod/admin.php:566
 #, php-format
 msgid "%s user deleted"
 msgid_plural "%s users deleted"
 msgstr[0] ""
 msgstr[1] ""
 
-#: ../../mod/admin.php:590
+#: ../../mod/admin.php:605
 #, php-format
 msgid "User '%s' deleted"
 msgstr ""
 
-#: ../../mod/admin.php:598
+#: ../../mod/admin.php:613
 #, php-format
 msgid "User '%s' unblocked"
 msgstr ""
 
-#: ../../mod/admin.php:598
+#: ../../mod/admin.php:613
 #, php-format
 msgid "User '%s' blocked"
 msgstr ""
 
-#: ../../mod/admin.php:662
+#: ../../mod/admin.php:677
 msgid "select all"
 msgstr ""
 
-#: ../../mod/admin.php:663
+#: ../../mod/admin.php:678
 msgid "User registrations waiting for confirm"
 msgstr ""
 
-#: ../../mod/admin.php:664
+#: ../../mod/admin.php:679
 msgid "Request date"
 msgstr ""
 
-#: ../../mod/admin.php:664 ../../mod/admin.php:673
+#: ../../mod/admin.php:679 ../../mod/admin.php:688
 #: ../../include/contact_selectors.php:79
 msgid "Email"
 msgstr ""
 
-#: ../../mod/admin.php:665
+#: ../../mod/admin.php:680
 msgid "No registrations."
 msgstr ""
 
-#: ../../mod/admin.php:667
+#: ../../mod/admin.php:682
 msgid "Deny"
 msgstr ""
 
-#: ../../mod/admin.php:673
+#: ../../mod/admin.php:688
 msgid "Register date"
 msgstr ""
 
-#: ../../mod/admin.php:673
+#: ../../mod/admin.php:688
 msgid "Last login"
 msgstr ""
 
-#: ../../mod/admin.php:673
+#: ../../mod/admin.php:688
 msgid "Last item"
 msgstr ""
 
-#: ../../mod/admin.php:673
+#: ../../mod/admin.php:688
 msgid "Account"
 msgstr ""
 
-#: ../../mod/admin.php:675
+#: ../../mod/admin.php:690
 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:676
+#: ../../mod/admin.php:691
 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:717
+#: ../../mod/admin.php:732
 #, php-format
 msgid "Plugin %s disabled."
 msgstr ""
 
-#: ../../mod/admin.php:721
+#: ../../mod/admin.php:736
 #, php-format
 msgid "Plugin %s enabled."
 msgstr ""
 
-#: ../../mod/admin.php:731 ../../mod/admin.php:929
+#: ../../mod/admin.php:746 ../../mod/admin.php:944
 msgid "Disable"
 msgstr ""
 
-#: ../../mod/admin.php:733 ../../mod/admin.php:931
+#: ../../mod/admin.php:748 ../../mod/admin.php:946
 msgid "Enable"
 msgstr ""
 
-#: ../../mod/admin.php:755 ../../mod/admin.php:960
+#: ../../mod/admin.php:770 ../../mod/admin.php:975
 msgid "Toggle"
 msgstr ""
 
-#: ../../mod/admin.php:763 ../../mod/admin.php:970
+#: ../../mod/admin.php:778 ../../mod/admin.php:985
 msgid "Author: "
 msgstr ""
 
-#: ../../mod/admin.php:764 ../../mod/admin.php:971
+#: ../../mod/admin.php:779 ../../mod/admin.php:986
 msgid "Maintainer: "
 msgstr ""
 
-#: ../../mod/admin.php:893
+#: ../../mod/admin.php:908
 msgid "No themes found."
 msgstr ""
 
-#: ../../mod/admin.php:952
+#: ../../mod/admin.php:967
 msgid "Screenshot"
 msgstr ""
 
-#: ../../mod/admin.php:1000
+#: ../../mod/admin.php:1015
 msgid "[Experimental]"
 msgstr ""
 
-#: ../../mod/admin.php:1001
+#: ../../mod/admin.php:1016
 msgid "[Unsupported]"
 msgstr ""
 
-#: ../../mod/admin.php:1028
+#: ../../mod/admin.php:1043
 msgid "Log settings updated."
 msgstr ""
 
-#: ../../mod/admin.php:1084
+#: ../../mod/admin.php:1099
 msgid "Clear"
 msgstr ""
 
-#: ../../mod/admin.php:1090
+#: ../../mod/admin.php:1105
 msgid "Debugging"
 msgstr ""
 
-#: ../../mod/admin.php:1091
+#: ../../mod/admin.php:1106
 msgid "Log file"
 msgstr ""
 
-#: ../../mod/admin.php:1091
+#: ../../mod/admin.php:1106
 msgid ""
 "Must be writable by web server. Relative to your Friendica top-level "
 "directory."
 msgstr ""
 
-#: ../../mod/admin.php:1092
+#: ../../mod/admin.php:1107
 msgid "Log level"
 msgstr ""
 
-#: ../../mod/admin.php:1142
+#: ../../mod/admin.php:1157
 msgid "Close"
 msgstr ""
 
-#: ../../mod/admin.php:1148
+#: ../../mod/admin.php:1163
 msgid "FTP Host"
 msgstr ""
 
-#: ../../mod/admin.php:1149
+#: ../../mod/admin.php:1164
 msgid "FTP Path"
 msgstr ""
 
-#: ../../mod/admin.php:1150
+#: ../../mod/admin.php:1165
 msgid "FTP User"
 msgstr ""
 
-#: ../../mod/admin.php:1151
+#: ../../mod/admin.php:1166
 msgid "FTP Password"
 msgstr ""
 
-#: ../../mod/profile.php:21 ../../boot.php:1043
+#: ../../mod/profile.php:22 ../../boot.php:1065
 msgid "Requested profile is not available."
 msgstr ""
 
-#: ../../mod/profile.php:141 ../../mod/display.php:75
+#: ../../mod/profile.php:142 ../../mod/display.php:67
 msgid "Access to this profile has been restricted."
 msgstr ""
 
-#: ../../mod/profile.php:166
+#: ../../mod/profile.php:167
 msgid "Tips for New Members"
 msgstr ""
 
@@ -3898,7 +3930,7 @@ msgstr ""
 msgid "link"
 msgstr ""
 
-#: ../../mod/display.php:135
+#: ../../mod/display.php:128
 msgid "Item has been removed."
 msgstr ""
 
@@ -3910,13 +3942,13 @@ msgstr ""
 msgid "No installed applications."
 msgstr ""
 
-#: ../../mod/search.php:83 ../../include/text.php:674
-#: ../../include/text.php:675 ../../include/nav.php:91
+#: ../../mod/search.php:83 ../../include/text.php:678
+#: ../../include/text.php:679 ../../include/nav.php:91
 msgid "Search"
 msgstr ""
 
-#: ../../mod/profiles.php:21 ../../mod/profiles.php:418
-#: ../../mod/profiles.php:532 ../../mod/dfrn_confirm.php:62
+#: ../../mod/profiles.php:21 ../../mod/profiles.php:423
+#: ../../mod/profiles.php:537 ../../mod/dfrn_confirm.php:62
 msgid "Profile not found."
 msgstr ""
 
@@ -3924,306 +3956,306 @@ msgstr ""
 msgid "Profile Name is required."
 msgstr ""
 
-#: ../../mod/profiles.php:155
+#: ../../mod/profiles.php:160
 msgid "Marital Status"
 msgstr ""
 
-#: ../../mod/profiles.php:159
+#: ../../mod/profiles.php:164
 msgid "Romantic Partner"
 msgstr ""
 
-#: ../../mod/profiles.php:163
+#: ../../mod/profiles.php:168
 msgid "Likes"
 msgstr ""
 
-#: ../../mod/profiles.php:167
+#: ../../mod/profiles.php:172
 msgid "Dislikes"
 msgstr ""
 
-#: ../../mod/profiles.php:171
+#: ../../mod/profiles.php:176
 msgid "Work/Employment"
 msgstr ""
 
-#: ../../mod/profiles.php:174
+#: ../../mod/profiles.php:179
 msgid "Religion"
 msgstr ""
 
-#: ../../mod/profiles.php:178
+#: ../../mod/profiles.php:183
 msgid "Political Views"
 msgstr ""
 
-#: ../../mod/profiles.php:182
+#: ../../mod/profiles.php:187
 msgid "Gender"
 msgstr ""
 
-#: ../../mod/profiles.php:186
+#: ../../mod/profiles.php:191
 msgid "Sexual Preference"
 msgstr ""
 
-#: ../../mod/profiles.php:190
+#: ../../mod/profiles.php:195
 msgid "Homepage"
 msgstr ""
 
-#: ../../mod/profiles.php:194
+#: ../../mod/profiles.php:199
 msgid "Interests"
 msgstr ""
 
-#: ../../mod/profiles.php:198
+#: ../../mod/profiles.php:203
 msgid "Address"
 msgstr ""
 
-#: ../../mod/profiles.php:205 ../../addon/dav/common/wdcal_edit.inc.php:183
+#: ../../mod/profiles.php:210 ../../addon/dav/common/wdcal_edit.inc.php:183
 msgid "Location"
 msgstr ""
 
-#: ../../mod/profiles.php:288
+#: ../../mod/profiles.php:293
 msgid "Profile updated."
 msgstr ""
 
-#: ../../mod/profiles.php:355
+#: ../../mod/profiles.php:360
 msgid " and "
 msgstr ""
 
-#: ../../mod/profiles.php:363
+#: ../../mod/profiles.php:368
 msgid "public profile"
 msgstr ""
 
-#: ../../mod/profiles.php:366
+#: ../../mod/profiles.php:371
 #, php-format
 msgid "%1$s changed %2$s to &ldquo;%3$s&rdquo;"
 msgstr ""
 
-#: ../../mod/profiles.php:367
+#: ../../mod/profiles.php:372
 #, php-format
 msgid " - Visit %1$s's %2$s"
 msgstr ""
 
-#: ../../mod/profiles.php:370
+#: ../../mod/profiles.php:375
 #, php-format
 msgid "%1$s has an updated %2$s, changing %3$s."
 msgstr ""
 
-#: ../../mod/profiles.php:437
+#: ../../mod/profiles.php:442
 msgid "Profile deleted."
 msgstr ""
 
-#: ../../mod/profiles.php:455 ../../mod/profiles.php:489
+#: ../../mod/profiles.php:460 ../../mod/profiles.php:494
 msgid "Profile-"
 msgstr ""
 
-#: ../../mod/profiles.php:474 ../../mod/profiles.php:516
+#: ../../mod/profiles.php:479 ../../mod/profiles.php:521
 msgid "New profile created."
 msgstr ""
 
-#: ../../mod/profiles.php:495
+#: ../../mod/profiles.php:500
 msgid "Profile unavailable to clone."
 msgstr ""
 
-#: ../../mod/profiles.php:557
+#: ../../mod/profiles.php:562
 msgid "Hide your contact/friend list from viewers of this profile?"
 msgstr ""
 
-#: ../../mod/profiles.php:577
+#: ../../mod/profiles.php:582
 msgid "Edit Profile Details"
 msgstr ""
 
-#: ../../mod/profiles.php:579
+#: ../../mod/profiles.php:584
 msgid "View this profile"
 msgstr ""
 
-#: ../../mod/profiles.php:580
+#: ../../mod/profiles.php:585
 msgid "Create a new profile using these settings"
 msgstr ""
 
-#: ../../mod/profiles.php:581
+#: ../../mod/profiles.php:586
 msgid "Clone this profile"
 msgstr ""
 
-#: ../../mod/profiles.php:582
+#: ../../mod/profiles.php:587
 msgid "Delete this profile"
 msgstr ""
 
-#: ../../mod/profiles.php:583
+#: ../../mod/profiles.php:588
 msgid "Profile Name:"
 msgstr ""
 
-#: ../../mod/profiles.php:584
+#: ../../mod/profiles.php:589
 msgid "Your Full Name:"
 msgstr ""
 
-#: ../../mod/profiles.php:585
+#: ../../mod/profiles.php:590
 msgid "Title/Description:"
 msgstr ""
 
-#: ../../mod/profiles.php:586
+#: ../../mod/profiles.php:591
 msgid "Your Gender:"
 msgstr ""
 
-#: ../../mod/profiles.php:587
+#: ../../mod/profiles.php:592
 #, php-format
 msgid "Birthday (%s):"
 msgstr ""
 
-#: ../../mod/profiles.php:588
+#: ../../mod/profiles.php:593
 msgid "Street Address:"
 msgstr ""
 
-#: ../../mod/profiles.php:589
+#: ../../mod/profiles.php:594
 msgid "Locality/City:"
 msgstr ""
 
-#: ../../mod/profiles.php:590
+#: ../../mod/profiles.php:595
 msgid "Postal/Zip Code:"
 msgstr ""
 
-#: ../../mod/profiles.php:591
+#: ../../mod/profiles.php:596
 msgid "Country:"
 msgstr ""
 
-#: ../../mod/profiles.php:592
+#: ../../mod/profiles.php:597
 msgid "Region/State:"
 msgstr ""
 
-#: ../../mod/profiles.php:593
+#: ../../mod/profiles.php:598
 msgid "<span class=\"heart\">&hearts;</span> Marital Status:"
 msgstr ""
 
-#: ../../mod/profiles.php:594
+#: ../../mod/profiles.php:599
 msgid "Who: (if applicable)"
 msgstr ""
 
-#: ../../mod/profiles.php:595
+#: ../../mod/profiles.php:600
 msgid "Examples: cathy123, Cathy Williams, cathy@example.com"
 msgstr ""
 
-#: ../../mod/profiles.php:596
+#: ../../mod/profiles.php:601
 msgid "Since [date]:"
 msgstr ""
 
-#: ../../mod/profiles.php:597 ../../include/profile_advanced.php:46
+#: ../../mod/profiles.php:602 ../../include/profile_advanced.php:46
 msgid "Sexual Preference:"
 msgstr ""
 
-#: ../../mod/profiles.php:598
+#: ../../mod/profiles.php:603
 msgid "Homepage URL:"
 msgstr ""
 
-#: ../../mod/profiles.php:599 ../../include/profile_advanced.php:50
+#: ../../mod/profiles.php:604 ../../include/profile_advanced.php:50
 msgid "Hometown:"
 msgstr ""
 
-#: ../../mod/profiles.php:600 ../../include/profile_advanced.php:54
+#: ../../mod/profiles.php:605 ../../include/profile_advanced.php:54
 msgid "Political Views:"
 msgstr ""
 
-#: ../../mod/profiles.php:601
+#: ../../mod/profiles.php:606
 msgid "Religious Views:"
 msgstr ""
 
-#: ../../mod/profiles.php:602
+#: ../../mod/profiles.php:607
 msgid "Public Keywords:"
 msgstr ""
 
-#: ../../mod/profiles.php:603
+#: ../../mod/profiles.php:608
 msgid "Private Keywords:"
 msgstr ""
 
-#: ../../mod/profiles.php:604 ../../include/profile_advanced.php:62
+#: ../../mod/profiles.php:609 ../../include/profile_advanced.php:62
 msgid "Likes:"
 msgstr ""
 
-#: ../../mod/profiles.php:605 ../../include/profile_advanced.php:64
+#: ../../mod/profiles.php:610 ../../include/profile_advanced.php:64
 msgid "Dislikes:"
 msgstr ""
 
-#: ../../mod/profiles.php:606
+#: ../../mod/profiles.php:611
 msgid "Example: fishing photography software"
 msgstr ""
 
-#: ../../mod/profiles.php:607
+#: ../../mod/profiles.php:612
 msgid "(Used for suggesting potential friends, can be seen by others)"
 msgstr ""
 
-#: ../../mod/profiles.php:608
+#: ../../mod/profiles.php:613
 msgid "(Used for searching profiles, never shown to others)"
 msgstr ""
 
-#: ../../mod/profiles.php:609
+#: ../../mod/profiles.php:614
 msgid "Tell us about yourself..."
 msgstr ""
 
-#: ../../mod/profiles.php:610
+#: ../../mod/profiles.php:615
 msgid "Hobbies/Interests"
 msgstr ""
 
-#: ../../mod/profiles.php:611
+#: ../../mod/profiles.php:616
 msgid "Contact information and Social Networks"
 msgstr ""
 
-#: ../../mod/profiles.php:612
+#: ../../mod/profiles.php:617
 msgid "Musical interests"
 msgstr ""
 
-#: ../../mod/profiles.php:613
+#: ../../mod/profiles.php:618
 msgid "Books, literature"
 msgstr ""
 
-#: ../../mod/profiles.php:614
+#: ../../mod/profiles.php:619
 msgid "Television"
 msgstr ""
 
-#: ../../mod/profiles.php:615
+#: ../../mod/profiles.php:620
 msgid "Film/dance/culture/entertainment"
 msgstr ""
 
-#: ../../mod/profiles.php:616
+#: ../../mod/profiles.php:621
 msgid "Love/romance"
 msgstr ""
 
-#: ../../mod/profiles.php:617
+#: ../../mod/profiles.php:622
 msgid "Work/employment"
 msgstr ""
 
-#: ../../mod/profiles.php:618
+#: ../../mod/profiles.php:623
 msgid "School/education"
 msgstr ""
 
-#: ../../mod/profiles.php:623
+#: ../../mod/profiles.php:628
 msgid ""
 "This is your <strong>public</strong> profile.<br />It <strong>may</strong> "
 "be visible to anybody using the internet."
 msgstr ""
 
-#: ../../mod/profiles.php:633 ../../mod/directory.php:109
+#: ../../mod/profiles.php:638 ../../mod/directory.php:109
 msgid "Age: "
 msgstr ""
 
-#: ../../mod/profiles.php:672
+#: ../../mod/profiles.php:677
 msgid "Edit/Manage Profiles"
 msgstr ""
 
-#: ../../mod/profiles.php:673 ../../boot.php:1152
+#: ../../mod/profiles.php:678 ../../boot.php:1174
 msgid "Change profile photo"
 msgstr ""
 
-#: ../../mod/profiles.php:674 ../../boot.php:1153
+#: ../../mod/profiles.php:679 ../../boot.php:1175
 msgid "Create New Profile"
 msgstr ""
 
-#: ../../mod/profiles.php:685 ../../boot.php:1163
+#: ../../mod/profiles.php:690 ../../boot.php:1185
 msgid "Profile Image"
 msgstr ""
 
-#: ../../mod/profiles.php:687 ../../boot.php:1166
+#: ../../mod/profiles.php:692 ../../boot.php:1188
 msgid "visible to everybody"
 msgstr ""
 
-#: ../../mod/profiles.php:688 ../../boot.php:1167
+#: ../../mod/profiles.php:693 ../../boot.php:1189
 msgid "Edit visibility"
 msgstr ""
 
-#: ../../mod/filer.php:29 ../../include/conversation.php:1069
-#: ../../include/conversation.php:1086
+#: ../../mod/filer.php:29 ../../include/conversation.php:1105
+#: ../../include/conversation.php:1122
 msgid "Save to Folder:"
 msgstr ""
 
@@ -4231,7 +4263,7 @@ msgstr ""
 msgid "- select -"
 msgstr ""
 
-#: ../../mod/tagger.php:103 ../../include/conversation.php:242
+#: ../../mod/tagger.php:103 ../../include/conversation.php:256
 #, php-format
 msgid "%1$s tagged %2$s's %3$s with %4$s"
 msgstr ""
@@ -4347,17 +4379,17 @@ msgid "Gender: "
 msgstr ""
 
 #: ../../mod/directory.php:134 ../../include/profile_advanced.php:17
-#: ../../boot.php:1188
+#: ../../boot.php:1210
 msgid "Gender:"
 msgstr ""
 
 #: ../../mod/directory.php:136 ../../include/profile_advanced.php:37
-#: ../../boot.php:1191
+#: ../../boot.php:1213
 msgid "Status:"
 msgstr ""
 
 #: ../../mod/directory.php:138 ../../include/profile_advanced.php:48
-#: ../../boot.php:1193
+#: ../../boot.php:1215
 msgid "Homepage:"
 msgstr ""
 
@@ -4488,7 +4520,7 @@ msgstr ""
 msgid "Unable to set contact photo."
 msgstr ""
 
-#: ../../mod/dfrn_confirm.php:477 ../../include/diaspora.php:577
+#: ../../mod/dfrn_confirm.php:477 ../../include/diaspora.php:608
 #: ../../include/conversation.php:162
 #, php-format
 msgid "%1$s is now friends with %2$s"
@@ -4723,7 +4755,8 @@ msgstr ""
 msgid "Activate Real-Time Updates"
 msgstr ""
 
-#: ../../addon/facebook/facebook.php:799 ../../addon/dav/layout.fnk.php:361
+#: ../../addon/facebook/facebook.php:799
+#: ../../addon/dav/friendica/layout.fnk.php:361
 msgid "The new values have been saved."
 msgstr ""
 
@@ -4787,23 +4820,23 @@ msgstr ""
 msgid "How many contacts to display on profile sidebar"
 msgstr ""
 
-#: ../../addon/privacy_image_cache/privacy_image_cache.php:233
+#: ../../addon/privacy_image_cache/privacy_image_cache.php:260
 msgid "Lifetime of the cache (in hours)"
 msgstr ""
 
-#: ../../addon/privacy_image_cache/privacy_image_cache.php:238
+#: ../../addon/privacy_image_cache/privacy_image_cache.php:265
 msgid "Cache Statistics"
 msgstr ""
 
-#: ../../addon/privacy_image_cache/privacy_image_cache.php:241
+#: ../../addon/privacy_image_cache/privacy_image_cache.php:268
 msgid "Number of items"
 msgstr ""
 
-#: ../../addon/privacy_image_cache/privacy_image_cache.php:243
+#: ../../addon/privacy_image_cache/privacy_image_cache.php:270
 msgid "Size of the cache"
 msgstr ""
 
-#: ../../addon/privacy_image_cache/privacy_image_cache.php:245
+#: ../../addon/privacy_image_cache/privacy_image_cache.php:272
 msgid "Delete the whole cache"
 msgstr ""
 
@@ -5115,7 +5148,7 @@ msgstr ""
 #: ../../addon/communityhome/communityhome.php:34
 #: ../../addon/communityhome/twillingham/communityhome.php:28
 #: ../../addon/communityhome/twillingham/communityhome.php:34
-#: ../../include/nav.php:64 ../../boot.php:899
+#: ../../include/nav.php:64 ../../boot.php:921
 msgid "Login"
 msgstr ""
 
@@ -5143,15 +5176,11 @@ msgid "Latest likes"
 msgstr ""
 
 #: ../../addon/communityhome/communityhome.php:155
-#: ../../view/theme/diabook/theme.php:562 ../../include/text.php:1360
-#: ../../include/conversation.php:106 ../../include/conversation.php:222
+#: ../../view/theme/diabook/theme.php:562 ../../include/text.php:1397
+#: ../../include/conversation.php:106 ../../include/conversation.php:236
 msgid "event"
 msgstr ""
 
-#: ../../addon/dav/dav_caldav_backend_virtual_friendica.inc.php:36
-msgid "Friendicy-Native events"
-msgstr ""
-
 #: ../../addon/dav/common/wdcal_backend.inc.php:92
 #: ../../addon/dav/common/wdcal_backend.inc.php:166
 #: ../../addon/dav/common/wdcal_backend.inc.php:178
@@ -5167,7 +5196,8 @@ msgid "Could not open component for editing"
 msgstr ""
 
 #: ../../addon/dav/common/wdcal_edit.inc.php:140
-#: ../../addon/dav/layout.fnk.php:143 ../../addon/dav/layout.fnk.php:422
+#: ../../addon/dav/friendica/layout.fnk.php:143
+#: ../../addon/dav/friendica/layout.fnk.php:422
 msgid "Go back to the calendar"
 msgstr ""
 
@@ -5175,7 +5205,8 @@ msgstr ""
 msgid "Event data"
 msgstr ""
 
-#: ../../addon/dav/common/wdcal_edit.inc.php:146 ../../addon/dav/main.php:206
+#: ../../addon/dav/common/wdcal_edit.inc.php:146
+#: ../../addon/dav/friendica/main.php:239
 msgid "Calendar"
 msgstr ""
 
@@ -5264,38 +5295,38 @@ msgstr ""
 #: ../../addon/dav/common/wdcal_edit.inc.php:254
 #: ../../addon/dav/common/wdcal_edit.inc.php:270
 #: ../../addon/dav/common/wdcal_edit.inc.php:293
-#: ../../addon/dav/common/wdcal_edit.inc.php:305 ../../include/text.php:880
+#: ../../addon/dav/common/wdcal_edit.inc.php:305 ../../include/text.php:917
 msgid "Sunday"
 msgstr ""
 
 #: ../../addon/dav/common/wdcal_edit.inc.php:235
 #: ../../addon/dav/common/wdcal_edit.inc.php:274
-#: ../../addon/dav/common/wdcal_edit.inc.php:308 ../../include/text.php:880
+#: ../../addon/dav/common/wdcal_edit.inc.php:308 ../../include/text.php:917
 msgid "Monday"
 msgstr ""
 
 #: ../../addon/dav/common/wdcal_edit.inc.php:238
-#: ../../addon/dav/common/wdcal_edit.inc.php:277 ../../include/text.php:880
+#: ../../addon/dav/common/wdcal_edit.inc.php:277 ../../include/text.php:917
 msgid "Tuesday"
 msgstr ""
 
 #: ../../addon/dav/common/wdcal_edit.inc.php:241
-#: ../../addon/dav/common/wdcal_edit.inc.php:280 ../../include/text.php:880
+#: ../../addon/dav/common/wdcal_edit.inc.php:280 ../../include/text.php:917
 msgid "Wednesday"
 msgstr ""
 
 #: ../../addon/dav/common/wdcal_edit.inc.php:244
-#: ../../addon/dav/common/wdcal_edit.inc.php:283 ../../include/text.php:880
+#: ../../addon/dav/common/wdcal_edit.inc.php:283 ../../include/text.php:917
 msgid "Thursday"
 msgstr ""
 
 #: ../../addon/dav/common/wdcal_edit.inc.php:247
-#: ../../addon/dav/common/wdcal_edit.inc.php:286 ../../include/text.php:880
+#: ../../addon/dav/common/wdcal_edit.inc.php:286 ../../include/text.php:917
 msgid "Friday"
 msgstr ""
 
 #: ../../addon/dav/common/wdcal_edit.inc.php:250
-#: ../../addon/dav/common/wdcal_edit.inc.php:289 ../../include/text.php:880
+#: ../../addon/dav/common/wdcal_edit.inc.php:289 ../../include/text.php:917
 msgid "Saturday"
 msgstr ""
 
@@ -5325,7 +5356,7 @@ msgid "#num#th-last #wkday# of each month"
 msgstr ""
 
 #: ../../addon/dav/common/wdcal_edit.inc.php:372
-#: ../../addon/dav/layout.fnk.php:255
+#: ../../addon/dav/friendica/layout.fnk.php:255
 msgid "Month"
 msgstr ""
 
@@ -5445,178 +5476,189 @@ msgstr ""
 msgid "Private Events"
 msgstr ""
 
-#: ../../addon/dav/dav_carddav_backend_virtual_friendica.inc.php:53
+#: ../../addon/dav/common/dav_carddav_backend_private.inc.php:46
+msgid "Private Addressbooks"
+msgstr ""
+
+#: ../../addon/dav/friendica/dav_caldav_backend_virtual_friendica.inc.php:36
+msgid "Friendica-Native events"
+msgstr ""
+
+#: ../../addon/dav/friendica/dav_carddav_backend_virtual_friendica.inc.php:36
+#: ../../addon/dav/friendica/dav_carddav_backend_virtual_friendica.inc.php:59
 msgid "Friendica-Contacts"
 msgstr ""
 
-#: ../../addon/dav/dav_carddav_backend_virtual_friendica.inc.php:54
+#: ../../addon/dav/friendica/dav_carddav_backend_virtual_friendica.inc.php:60
 msgid "Your Friendica-Contacts"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:99 ../../addon/dav/layout.fnk.php:136
+#: ../../addon/dav/friendica/layout.fnk.php:99
+#: ../../addon/dav/friendica/layout.fnk.php:136
 msgid ""
 "Something went wrong when trying to import the file. Sorry. Maybe some "
 "events were imported anyway."
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:131
+#: ../../addon/dav/friendica/layout.fnk.php:131
 msgid "Something went wrong when trying to import the file. Sorry."
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:134
+#: ../../addon/dav/friendica/layout.fnk.php:134
 msgid "The ICS-File has been imported."
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:138
+#: ../../addon/dav/friendica/layout.fnk.php:138
 msgid "No file was uploaded."
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:147
+#: ../../addon/dav/friendica/layout.fnk.php:147
 msgid "Import a ICS-file"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:150
+#: ../../addon/dav/friendica/layout.fnk.php:150
 msgid "ICS-File"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:151
+#: ../../addon/dav/friendica/layout.fnk.php:151
 msgid "Overwrite all #num# existing events"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:228
+#: ../../addon/dav/friendica/layout.fnk.php:228
 msgid "New event"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:232
+#: ../../addon/dav/friendica/layout.fnk.php:232
 msgid "Today"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:241
+#: ../../addon/dav/friendica/layout.fnk.php:241
 msgid "Day"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:248
+#: ../../addon/dav/friendica/layout.fnk.php:248
 msgid "Week"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:260
+#: ../../addon/dav/friendica/layout.fnk.php:260
 msgid "Reload"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:271
+#: ../../addon/dav/friendica/layout.fnk.php:271
 msgid "Date"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:313
+#: ../../addon/dav/friendica/layout.fnk.php:313
 msgid "Error"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:380
+#: ../../addon/dav/friendica/layout.fnk.php:380
 msgid "The calendar has been updated."
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:393
+#: ../../addon/dav/friendica/layout.fnk.php:393
 msgid "The new calendar has been created."
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:417
+#: ../../addon/dav/friendica/layout.fnk.php:417
 msgid "The calendar has been deleted."
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:424
+#: ../../addon/dav/friendica/layout.fnk.php:424
 msgid "Calendar Settings"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:430
+#: ../../addon/dav/friendica/layout.fnk.php:430
 msgid "Date format"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:439
+#: ../../addon/dav/friendica/layout.fnk.php:439
 msgid "Time zone"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:445
+#: ../../addon/dav/friendica/layout.fnk.php:445
 msgid "Calendars"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:487
+#: ../../addon/dav/friendica/layout.fnk.php:487
 msgid "Create a new calendar"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:496
+#: ../../addon/dav/friendica/layout.fnk.php:496
 msgid "Limitations"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:500 ../../addon/libravatar/libravatar.php:82
+#: ../../addon/dav/friendica/layout.fnk.php:500
+#: ../../addon/libravatar/libravatar.php:82
 msgid "Warning"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:504
+#: ../../addon/dav/friendica/layout.fnk.php:504
 msgid "Synchronization (iPhone, Thunderbird Lightning, Android, ...)"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:511
+#: ../../addon/dav/friendica/layout.fnk.php:511
 msgid "Synchronizing this calendar with the iPhone"
 msgstr ""
 
-#: ../../addon/dav/layout.fnk.php:522
+#: ../../addon/dav/friendica/layout.fnk.php:522
 msgid "Synchronizing your Friendica-Contacts with the iPhone"
 msgstr ""
 
-#: ../../addon/dav/main.php:169
+#: ../../addon/dav/friendica/main.php:202
 msgid ""
 "The current version of this plugin has not been set up correctly. Please "
 "contact the system administrator of your installation of friendica to fix "
 "this."
 msgstr ""
 
-#: ../../addon/dav/main.php:209
+#: ../../addon/dav/friendica/main.php:242
 msgid "Extended calendar with CalDAV-support"
 msgstr ""
 
-#: ../../addon/dav/main.php:246 ../../addon/dav/main.php:247
-#: ../../include/delivery.php:463 ../../include/enotify.php:26
-#: ../../include/notifier.php:685
+#: ../../addon/dav/friendica/main.php:279
+#: ../../addon/dav/friendica/main.php:280 ../../include/delivery.php:463
+#: ../../include/enotify.php:28 ../../include/notifier.php:710
 msgid "noreply"
 msgstr ""
 
-#: ../../addon/dav/main.php:249
+#: ../../addon/dav/friendica/main.php:282
 msgid "Notification: "
 msgstr ""
 
-#: ../../addon/dav/main.php:276
+#: ../../addon/dav/friendica/main.php:309
 msgid "The database tables have been installed."
 msgstr ""
 
-#: ../../addon/dav/main.php:277
+#: ../../addon/dav/friendica/main.php:310
 msgid "An error occurred during the installation."
 msgstr ""
 
-#: ../../addon/dav/main.php:283
+#: ../../addon/dav/friendica/main.php:316
 msgid "The database tables have been updated."
 msgstr ""
 
-#: ../../addon/dav/main.php:285
+#: ../../addon/dav/friendica/main.php:317
 msgid "An error occurred during the update."
 msgstr ""
 
-#: ../../addon/dav/main.php:301
+#: ../../addon/dav/friendica/main.php:333
 msgid "No system-wide settings yet."
 msgstr ""
 
-#: ../../addon/dav/main.php:304
+#: ../../addon/dav/friendica/main.php:336
 msgid "Database status"
 msgstr ""
 
-#: ../../addon/dav/main.php:307
+#: ../../addon/dav/friendica/main.php:339
 msgid "Installed"
 msgstr ""
 
-#: ../../addon/dav/main.php:310
+#: ../../addon/dav/friendica/main.php:343
 msgid "Upgrade needed"
 msgstr ""
 
-#: ../../addon/dav/main.php:310
+#: ../../addon/dav/friendica/main.php:343
 msgid ""
 "Please back up all calendar data (the tables beginning with dav_*) before "
 "proceeding. While all calendar events <i>should</i> be converted to the new "
@@ -5625,23 +5667,23 @@ msgid ""
 "button."
 msgstr ""
 
-#: ../../addon/dav/main.php:310
+#: ../../addon/dav/friendica/main.php:343
 msgid "Upgrade"
 msgstr ""
 
-#: ../../addon/dav/main.php:313
+#: ../../addon/dav/friendica/main.php:346
 msgid "Not installed"
 msgstr ""
 
-#: ../../addon/dav/main.php:313
+#: ../../addon/dav/friendica/main.php:346
 msgid "Install"
 msgstr ""
 
-#: ../../addon/dav/main.php:317
+#: ../../addon/dav/friendica/main.php:350
 msgid "Unknown"
 msgstr ""
 
-#: ../../addon/dav/main.php:317
+#: ../../addon/dav/friendica/main.php:350
 msgid ""
 "Something really went wrong. I cannot recover from this state automatically, "
 "sorry. Please go to the database backend, back up the data, and delete all "
@@ -5649,30 +5691,38 @@ msgid ""
 "should be able to reinitialize the tables automatically."
 msgstr ""
 
-#: ../../addon/dav/main.php:322
+#: ../../addon/dav/friendica/main.php:355
 msgid "Troubleshooting"
 msgstr ""
 
-#: ../../addon/dav/main.php:323
+#: ../../addon/dav/friendica/main.php:356
 msgid "Manual creation of the database tables:"
 msgstr ""
 
-#: ../../addon/dav/main.php:324
+#: ../../addon/dav/friendica/main.php:357
 msgid "Show SQL-statements"
 msgstr ""
 
-#: ../../addon/dav/calendar.friendica.fnk.php:193
+#: ../../addon/dav/friendica/calendar.friendica.fnk.php:206
 msgid "Private Calendar"
 msgstr ""
 
-#: ../../addon/dav/calendar.friendica.fnk.php:194
+#: ../../addon/dav/friendica/calendar.friendica.fnk.php:207
 msgid "Friendica Events: Mine"
 msgstr ""
 
-#: ../../addon/dav/calendar.friendica.fnk.php:195
+#: ../../addon/dav/friendica/calendar.friendica.fnk.php:208
 msgid "Friendica Events: Contacts"
 msgstr ""
 
+#: ../../addon/dav/friendica/calendar.friendica.fnk.php:248
+msgid "Private Addresses"
+msgstr ""
+
+#: ../../addon/dav/friendica/calendar.friendica.fnk.php:249
+msgid "Friendica Contacts"
+msgstr ""
+
 #: ../../addon/uhremotestorage/uhremotestorage.php:84
 #, php-format
 msgid ""
@@ -7301,19 +7351,19 @@ msgstr ""
 msgid "Ask me"
 msgstr ""
 
-#: ../../include/event.php:20 ../../include/bb2diaspora.php:431
+#: ../../include/event.php:20 ../../include/bb2diaspora.php:439
 msgid "Starts:"
 msgstr ""
 
-#: ../../include/event.php:30 ../../include/bb2diaspora.php:439
+#: ../../include/event.php:30 ../../include/bb2diaspora.php:447
 msgid "Finishes:"
 msgstr ""
 
-#: ../../include/delivery.php:456 ../../include/notifier.php:678
+#: ../../include/delivery.php:456 ../../include/notifier.php:703
 msgid "(no subject)"
 msgstr ""
 
-#: ../../include/Scrape.php:572
+#: ../../include/Scrape.php:575
 msgid " on Last.fm"
 msgstr ""
 
@@ -7341,178 +7391,258 @@ msgstr ""
 msgid "older"
 msgstr ""
 
-#: ../../include/text.php:593
+#: ../../include/text.php:597
 msgid "No contacts"
 msgstr ""
 
-#: ../../include/text.php:602
+#: ../../include/text.php:606
 #, php-format
 msgid "%d Contact"
 msgid_plural "%d Contacts"
 msgstr[0] ""
 msgstr[1] ""
 
-#: ../../include/text.php:715
+#: ../../include/text.php:719
 msgid "poke"
 msgstr ""
 
-#: ../../include/text.php:715 ../../include/conversation.php:201
+#: ../../include/text.php:719 ../../include/conversation.php:201
 msgid "poked"
 msgstr ""
 
-#: ../../include/text.php:716
+#: ../../include/text.php:720
 msgid "ping"
 msgstr ""
 
-#: ../../include/text.php:716
+#: ../../include/text.php:720
 msgid "pinged"
 msgstr ""
 
-#: ../../include/text.php:717
+#: ../../include/text.php:721
 msgid "prod"
 msgstr ""
 
-#: ../../include/text.php:717
+#: ../../include/text.php:721
 msgid "prodded"
 msgstr ""
 
-#: ../../include/text.php:718
+#: ../../include/text.php:722
 msgid "slap"
 msgstr ""
 
-#: ../../include/text.php:718
+#: ../../include/text.php:722
 msgid "slapped"
 msgstr ""
 
-#: ../../include/text.php:719
+#: ../../include/text.php:723
 msgid "finger"
 msgstr ""
 
-#: ../../include/text.php:719
+#: ../../include/text.php:723
 msgid "fingered"
 msgstr ""
 
-#: ../../include/text.php:720
+#: ../../include/text.php:724
 msgid "rebuff"
 msgstr ""
 
-#: ../../include/text.php:720
+#: ../../include/text.php:724
 msgid "rebuffed"
 msgstr ""
 
-#: ../../include/text.php:884
+#: ../../include/text.php:736
+msgid "happy"
+msgstr ""
+
+#: ../../include/text.php:737
+msgid "sad"
+msgstr ""
+
+#: ../../include/text.php:738
+msgid "mellow"
+msgstr ""
+
+#: ../../include/text.php:739
+msgid "tired"
+msgstr ""
+
+#: ../../include/text.php:740
+msgid "perky"
+msgstr ""
+
+#: ../../include/text.php:741
+msgid "angry"
+msgstr ""
+
+#: ../../include/text.php:742
+msgid "stupified"
+msgstr ""
+
+#: ../../include/text.php:743
+msgid "puzzled"
+msgstr ""
+
+#: ../../include/text.php:744
+msgid "interested"
+msgstr ""
+
+#: ../../include/text.php:745
+msgid "bitter"
+msgstr ""
+
+#: ../../include/text.php:746
+msgid "cheerful"
+msgstr ""
+
+#: ../../include/text.php:747
+msgid "alive"
+msgstr ""
+
+#: ../../include/text.php:748
+msgid "annoyed"
+msgstr ""
+
+#: ../../include/text.php:749
+msgid "anxious"
+msgstr ""
+
+#: ../../include/text.php:750
+msgid "cranky"
+msgstr ""
+
+#: ../../include/text.php:751
+msgid "disturbed"
+msgstr ""
+
+#: ../../include/text.php:752
+msgid "frustrated"
+msgstr ""
+
+#: ../../include/text.php:753
+msgid "motivated"
+msgstr ""
+
+#: ../../include/text.php:754
+msgid "relaxed"
+msgstr ""
+
+#: ../../include/text.php:755
+msgid "surprised"
+msgstr ""
+
+#: ../../include/text.php:921
 msgid "January"
 msgstr ""
 
-#: ../../include/text.php:884
+#: ../../include/text.php:921
 msgid "February"
 msgstr ""
 
-#: ../../include/text.php:884
+#: ../../include/text.php:921
 msgid "March"
 msgstr ""
 
-#: ../../include/text.php:884
+#: ../../include/text.php:921
 msgid "April"
 msgstr ""
 
-#: ../../include/text.php:884
+#: ../../include/text.php:921
 msgid "May"
 msgstr ""
 
-#: ../../include/text.php:884
+#: ../../include/text.php:921
 msgid "June"
 msgstr ""
 
-#: ../../include/text.php:884
+#: ../../include/text.php:921
 msgid "July"
 msgstr ""
 
-#: ../../include/text.php:884
+#: ../../include/text.php:921
 msgid "August"
 msgstr ""
 
-#: ../../include/text.php:884
+#: ../../include/text.php:921
 msgid "September"
 msgstr ""
 
-#: ../../include/text.php:884
+#: ../../include/text.php:921
 msgid "October"
 msgstr ""
 
-#: ../../include/text.php:884
+#: ../../include/text.php:921
 msgid "November"
 msgstr ""
 
-#: ../../include/text.php:884
+#: ../../include/text.php:921
 msgid "December"
 msgstr ""
 
-#: ../../include/text.php:970
+#: ../../include/text.php:1007
 msgid "bytes"
 msgstr ""
 
-#: ../../include/text.php:990 ../../include/text.php:1005
+#: ../../include/text.php:1027 ../../include/text.php:1042
 msgid "remove"
 msgstr ""
 
-#: ../../include/text.php:990 ../../include/text.php:1005
+#: ../../include/text.php:1027 ../../include/text.php:1042
 msgid "[remove]"
 msgstr ""
 
-#: ../../include/text.php:993
+#: ../../include/text.php:1030
 msgid "Categories:"
 msgstr ""
 
-#: ../../include/text.php:1008
+#: ../../include/text.php:1045
 msgid "Filed under:"
 msgstr ""
 
-#: ../../include/text.php:1024 ../../include/text.php:1036
+#: ../../include/text.php:1061 ../../include/text.php:1073
 msgid "Click to open/close"
 msgstr ""
 
-#: ../../include/text.php:1142 ../../include/user.php:236
+#: ../../include/text.php:1179 ../../include/user.php:236
 msgid "default"
 msgstr ""
 
-#: ../../include/text.php:1154
+#: ../../include/text.php:1191
 msgid "Select an alternate language"
 msgstr ""
 
-#: ../../include/text.php:1364
+#: ../../include/text.php:1401
 msgid "activity"
 msgstr ""
 
-#: ../../include/text.php:1366
+#: ../../include/text.php:1403
 msgid "comment"
 msgstr ""
 
-#: ../../include/text.php:1367
+#: ../../include/text.php:1404
 msgid "post"
 msgstr ""
 
-#: ../../include/text.php:1522
+#: ../../include/text.php:1559
 msgid "Item filed"
 msgstr ""
 
-#: ../../include/diaspora.php:660
+#: ../../include/diaspora.php:691
 msgid "Sharing notification from Diaspora network"
 msgstr ""
 
-#: ../../include/diaspora.php:2177
+#: ../../include/diaspora.php:2202
 msgid "Attachments:"
 msgstr ""
 
-#: ../../include/network.php:843
+#: ../../include/network.php:849
 msgid "view full size"
 msgstr ""
 
-#: ../../include/oembed.php:135
+#: ../../include/oembed.php:137
 msgid "Embedded content"
 msgstr ""
 
-#: ../../include/oembed.php:144
+#: ../../include/oembed.php:146
 msgid "Embedding disabled"
 msgstr ""
 
@@ -7551,7 +7681,7 @@ msgstr ""
 msgid "Contacts not in any group"
 msgstr ""
 
-#: ../../include/nav.php:46 ../../boot.php:898
+#: ../../include/nav.php:46 ../../boot.php:920
 msgid "Logout"
 msgstr ""
 
@@ -7559,7 +7689,7 @@ msgstr ""
 msgid "End this session"
 msgstr ""
 
-#: ../../include/nav.php:49 ../../boot.php:1610
+#: ../../include/nav.php:49 ../../boot.php:1635
 msgid "Status"
 msgstr ""
 
@@ -7639,11 +7769,11 @@ msgstr ""
 msgid "Manage other pages"
 msgstr ""
 
-#: ../../include/nav.php:138 ../../boot.php:1146
+#: ../../include/nav.php:138 ../../boot.php:1168
 msgid "Profiles"
 msgstr ""
 
-#: ../../include/nav.php:138 ../../boot.php:1146
+#: ../../include/nav.php:138 ../../boot.php:1168
 msgid "Manage/edit profiles"
 msgstr ""
 
@@ -7789,12 +7919,12 @@ msgstr ""
 msgid "%1$d %2$s ago"
 msgstr ""
 
-#: ../../include/datetime.php:472 ../../include/items.php:1620
+#: ../../include/datetime.php:472 ../../include/items.php:1621
 #, php-format
 msgid "%s's birthday"
 msgstr ""
 
-#: ../../include/datetime.php:473 ../../include/items.php:1621
+#: ../../include/datetime.php:473 ../../include/items.php:1622
 #, php-format
 msgid "Happy Birthday %s"
 msgstr ""
@@ -7803,14 +7933,18 @@ msgstr ""
 msgid "From: "
 msgstr ""
 
-#: ../../include/bbcode.php:102 ../../include/bbcode.php:317
+#: ../../include/bbcode.php:102 ../../include/bbcode.php:323
 msgid "Image/photo"
 msgstr ""
 
-#: ../../include/bbcode.php:282 ../../include/bbcode.php:302
+#: ../../include/bbcode.php:288 ../../include/bbcode.php:308
 msgid "$1 wrote:"
 msgstr ""
 
+#: ../../include/bbcode.php:327 ../../include/bbcode.php:328
+msgid "Encrypted content"
+msgstr ""
+
 #: ../../include/dba.php:41
 #, php-format
 msgid "Cannot locate DNS info for database server '%s'"
@@ -7824,187 +7958,187 @@ msgstr ""
 msgid "Visible to everybody"
 msgstr ""
 
-#: ../../include/enotify.php:14
+#: ../../include/enotify.php:16
 msgid "Friendica Notification"
 msgstr ""
 
-#: ../../include/enotify.php:17
+#: ../../include/enotify.php:19
 msgid "Thank You,"
 msgstr ""
 
-#: ../../include/enotify.php:19
+#: ../../include/enotify.php:21
 #, php-format
 msgid "%s Administrator"
 msgstr ""
 
-#: ../../include/enotify.php:38
+#: ../../include/enotify.php:40
 #, php-format
 msgid "%s <!item_type!>"
 msgstr ""
 
-#: ../../include/enotify.php:42
+#: ../../include/enotify.php:44
 #, php-format
 msgid "[Friendica:Notify] New mail received at %s"
 msgstr ""
 
-#: ../../include/enotify.php:44
+#: ../../include/enotify.php:46
 #, php-format
 msgid "%1$s sent you a new private message at %2$s."
 msgstr ""
 
-#: ../../include/enotify.php:45
+#: ../../include/enotify.php:47
 #, php-format
 msgid "%1$s sent you %2$s."
 msgstr ""
 
-#: ../../include/enotify.php:45
+#: ../../include/enotify.php:47
 msgid "a private message"
 msgstr ""
 
-#: ../../include/enotify.php:46
+#: ../../include/enotify.php:48
 #, php-format
 msgid "Please visit %s to view and/or reply to your private messages."
 msgstr ""
 
-#: ../../include/enotify.php:87
+#: ../../include/enotify.php:89
 #, php-format
 msgid "%1$s commented on [url=%2$s]a %3$s[/url]"
 msgstr ""
 
-#: ../../include/enotify.php:94
+#: ../../include/enotify.php:96
 #, php-format
 msgid "%1$s commented on [url=%2$s]%3$s's %4$s[/url]"
 msgstr ""
 
-#: ../../include/enotify.php:102
+#: ../../include/enotify.php:104
 #, php-format
 msgid "%1$s commented on [url=%2$s]your %3$s[/url]"
 msgstr ""
 
-#: ../../include/enotify.php:112
+#: ../../include/enotify.php:114
 #, php-format
 msgid "[Friendica:Notify] Comment to conversation #%1$d by %2$s"
 msgstr ""
 
-#: ../../include/enotify.php:113
+#: ../../include/enotify.php:115
 #, php-format
 msgid "%s commented on an item/conversation you have been following."
 msgstr ""
 
-#: ../../include/enotify.php:116 ../../include/enotify.php:131
-#: ../../include/enotify.php:144 ../../include/enotify.php:162
-#: ../../include/enotify.php:175
+#: ../../include/enotify.php:118 ../../include/enotify.php:133
+#: ../../include/enotify.php:146 ../../include/enotify.php:164
+#: ../../include/enotify.php:177
 #, php-format
 msgid "Please visit %s to view and/or reply to the conversation."
 msgstr ""
 
-#: ../../include/enotify.php:123
+#: ../../include/enotify.php:125
 #, php-format
 msgid "[Friendica:Notify] %s posted to your profile wall"
 msgstr ""
 
-#: ../../include/enotify.php:125
+#: ../../include/enotify.php:127
 #, php-format
 msgid "%1$s posted to your profile wall at %2$s"
 msgstr ""
 
-#: ../../include/enotify.php:127
+#: ../../include/enotify.php:129
 #, php-format
 msgid "%1$s posted to [url=%2$s]your wall[/url]"
 msgstr ""
 
-#: ../../include/enotify.php:138
+#: ../../include/enotify.php:140
 #, php-format
 msgid "[Friendica:Notify] %s tagged you"
 msgstr ""
 
-#: ../../include/enotify.php:139
+#: ../../include/enotify.php:141
 #, php-format
 msgid "%1$s tagged you at %2$s"
 msgstr ""
 
-#: ../../include/enotify.php:140
+#: ../../include/enotify.php:142
 #, php-format
 msgid "%1$s [url=%2$s]tagged you[/url]."
 msgstr ""
 
-#: ../../include/enotify.php:152
+#: ../../include/enotify.php:154
 #, php-format
 msgid "[Friendica:Notify] %1$s poked you"
 msgstr ""
 
-#: ../../include/enotify.php:153
+#: ../../include/enotify.php:155
 #, php-format
 msgid "%1$s poked you at %2$s"
 msgstr ""
 
-#: ../../include/enotify.php:154
+#: ../../include/enotify.php:156
 #, php-format
 msgid "%1$s [url=%2$s]poked you[/url]."
 msgstr ""
 
-#: ../../include/enotify.php:169
+#: ../../include/enotify.php:171
 #, php-format
 msgid "[Friendica:Notify] %s tagged your post"
 msgstr ""
 
-#: ../../include/enotify.php:170
+#: ../../include/enotify.php:172
 #, php-format
 msgid "%1$s tagged your post at %2$s"
 msgstr ""
 
-#: ../../include/enotify.php:171
+#: ../../include/enotify.php:173
 #, php-format
 msgid "%1$s tagged [url=%2$s]your post[/url]"
 msgstr ""
 
-#: ../../include/enotify.php:182
+#: ../../include/enotify.php:184
 msgid "[Friendica:Notify] Introduction received"
 msgstr ""
 
-#: ../../include/enotify.php:183
+#: ../../include/enotify.php:185
 #, php-format
 msgid "You've received an introduction from '%1$s' at %2$s"
 msgstr ""
 
-#: ../../include/enotify.php:184
+#: ../../include/enotify.php:186
 #, php-format
 msgid "You've received [url=%1$s]an introduction[/url] from %2$s."
 msgstr ""
 
-#: ../../include/enotify.php:187 ../../include/enotify.php:205
+#: ../../include/enotify.php:189 ../../include/enotify.php:207
 #, php-format
 msgid "You may visit their profile at %s"
 msgstr ""
 
-#: ../../include/enotify.php:189
+#: ../../include/enotify.php:191
 #, php-format
 msgid "Please visit %s to approve or reject the introduction."
 msgstr ""
 
-#: ../../include/enotify.php:196
+#: ../../include/enotify.php:198
 msgid "[Friendica:Notify] Friend suggestion received"
 msgstr ""
 
-#: ../../include/enotify.php:197
+#: ../../include/enotify.php:199
 #, php-format
 msgid "You've received a friend suggestion from '%1$s' at %2$s"
 msgstr ""
 
-#: ../../include/enotify.php:198
+#: ../../include/enotify.php:200
 #, php-format
 msgid "You've received [url=%1$s]a friend suggestion[/url] for %2$s from %3$s."
 msgstr ""
 
-#: ../../include/enotify.php:203
+#: ../../include/enotify.php:205
 msgid "Name:"
 msgstr ""
 
-#: ../../include/enotify.php:204
+#: ../../include/enotify.php:206
 msgid "Photo:"
 msgstr ""
 
-#: ../../include/enotify.php:207
+#: ../../include/enotify.php:209
 #, php-format
 msgid "Please visit %s to approve or reject the suggestion."
 msgstr ""
@@ -8064,15 +8198,15 @@ msgstr ""
 msgid "following"
 msgstr ""
 
-#: ../../include/items.php:3211
+#: ../../include/items.php:3217
 msgid "A new person is sharing with you at "
 msgstr ""
 
-#: ../../include/items.php:3211
+#: ../../include/items.php:3217
 msgid "You have a new follower at "
 msgstr ""
 
-#: ../../include/items.php:3880
+#: ../../include/items.php:3886
 msgid "Archives"
 msgstr ""
 
@@ -8166,34 +8300,34 @@ msgstr ""
 msgid "stopped following"
 msgstr ""
 
-#: ../../include/Contact.php:220 ../../include/conversation.php:966
+#: ../../include/Contact.php:220 ../../include/conversation.php:1002
 msgid "Poke"
 msgstr ""
 
-#: ../../include/Contact.php:221 ../../include/conversation.php:960
+#: ../../include/Contact.php:221 ../../include/conversation.php:996
 msgid "View Status"
 msgstr ""
 
-#: ../../include/Contact.php:222 ../../include/conversation.php:961
+#: ../../include/Contact.php:222 ../../include/conversation.php:997
 msgid "View Profile"
 msgstr ""
 
-#: ../../include/Contact.php:223 ../../include/conversation.php:962
+#: ../../include/Contact.php:223 ../../include/conversation.php:998
 msgid "View Photos"
 msgstr ""
 
 #: ../../include/Contact.php:224 ../../include/Contact.php:237
-#: ../../include/conversation.php:963
+#: ../../include/conversation.php:999
 msgid "Network Posts"
 msgstr ""
 
 #: ../../include/Contact.php:225 ../../include/Contact.php:237
-#: ../../include/conversation.php:964
+#: ../../include/conversation.php:1000
 msgid "Edit Contact"
 msgstr ""
 
 #: ../../include/Contact.php:226 ../../include/Contact.php:237
-#: ../../include/conversation.php:965
+#: ../../include/conversation.php:1001
 msgid "Send PM"
 msgstr ""
 
@@ -8202,115 +8336,115 @@ msgstr ""
 msgid "%1$s poked %2$s"
 msgstr ""
 
-#: ../../include/conversation.php:267
+#: ../../include/conversation.php:281
 msgid "post/item"
 msgstr ""
 
-#: ../../include/conversation.php:268
+#: ../../include/conversation.php:282
 #, php-format
 msgid "%1$s marked %2$s's %3$s as favorite"
 msgstr ""
 
-#: ../../include/conversation.php:866
+#: ../../include/conversation.php:902
 msgid "Delete Selected Items"
 msgstr ""
 
-#: ../../include/conversation.php:1024
+#: ../../include/conversation.php:1060
 #, php-format
 msgid "%s likes this."
 msgstr ""
 
-#: ../../include/conversation.php:1024
+#: ../../include/conversation.php:1060
 #, php-format
 msgid "%s doesn't like this."
 msgstr ""
 
-#: ../../include/conversation.php:1028
+#: ../../include/conversation.php:1064
 #, php-format
 msgid "<span  %1$s>%2$d people</span> like this."
 msgstr ""
 
-#: ../../include/conversation.php:1030
+#: ../../include/conversation.php:1066
 #, php-format
 msgid "<span  %1$s>%2$d people</span> don't like this."
 msgstr ""
 
-#: ../../include/conversation.php:1036
+#: ../../include/conversation.php:1072
 msgid "and"
 msgstr ""
 
-#: ../../include/conversation.php:1039
+#: ../../include/conversation.php:1075
 #, php-format
 msgid ", and %d other people"
 msgstr ""
 
-#: ../../include/conversation.php:1040
+#: ../../include/conversation.php:1076
 #, php-format
 msgid "%s like this."
 msgstr ""
 
-#: ../../include/conversation.php:1040
+#: ../../include/conversation.php:1076
 #, php-format
 msgid "%s don't like this."
 msgstr ""
 
-#: ../../include/conversation.php:1064 ../../include/conversation.php:1081
+#: ../../include/conversation.php:1100 ../../include/conversation.php:1117
 msgid "Visible to <strong>everybody</strong>"
 msgstr ""
 
-#: ../../include/conversation.php:1066 ../../include/conversation.php:1083
+#: ../../include/conversation.php:1102 ../../include/conversation.php:1119
 msgid "Please enter a video link/URL:"
 msgstr ""
 
-#: ../../include/conversation.php:1067 ../../include/conversation.php:1084
+#: ../../include/conversation.php:1103 ../../include/conversation.php:1120
 msgid "Please enter an audio link/URL:"
 msgstr ""
 
-#: ../../include/conversation.php:1068 ../../include/conversation.php:1085
+#: ../../include/conversation.php:1104 ../../include/conversation.php:1121
 msgid "Tag term:"
 msgstr ""
 
-#: ../../include/conversation.php:1070 ../../include/conversation.php:1087
+#: ../../include/conversation.php:1106 ../../include/conversation.php:1123
 msgid "Where are you right now?"
 msgstr ""
 
-#: ../../include/conversation.php:1130
+#: ../../include/conversation.php:1166
 msgid "upload photo"
 msgstr ""
 
-#: ../../include/conversation.php:1132
+#: ../../include/conversation.php:1168
 msgid "attach file"
 msgstr ""
 
-#: ../../include/conversation.php:1134
+#: ../../include/conversation.php:1170
 msgid "web link"
 msgstr ""
 
-#: ../../include/conversation.php:1135
+#: ../../include/conversation.php:1171
 msgid "Insert video link"
 msgstr ""
 
-#: ../../include/conversation.php:1136
+#: ../../include/conversation.php:1172
 msgid "video link"
 msgstr ""
 
-#: ../../include/conversation.php:1137
+#: ../../include/conversation.php:1173
 msgid "Insert audio link"
 msgstr ""
 
-#: ../../include/conversation.php:1138
+#: ../../include/conversation.php:1174
 msgid "audio link"
 msgstr ""
 
-#: ../../include/conversation.php:1140
+#: ../../include/conversation.php:1176
 msgid "set location"
 msgstr ""
 
-#: ../../include/conversation.php:1142
+#: ../../include/conversation.php:1178
 msgid "clear location"
 msgstr ""
 
-#: ../../include/conversation.php:1149
+#: ../../include/conversation.php:1185
 msgid "permissions"
 msgstr ""
 
@@ -8326,96 +8460,96 @@ msgstr ""
 msgid "This action is not available under your subscription plan."
 msgstr ""
 
-#: ../../boot.php:568
+#: ../../boot.php:582
 msgid "Delete this item?"
 msgstr ""
 
-#: ../../boot.php:571
+#: ../../boot.php:585
 msgid "show fewer"
 msgstr ""
 
-#: ../../boot.php:774
+#: ../../boot.php:792
 #, php-format
 msgid "Update %s failed. See error logs."
 msgstr ""
 
-#: ../../boot.php:776
+#: ../../boot.php:794
 #, php-format
 msgid "Update Error at %s"
 msgstr ""
 
-#: ../../boot.php:877
+#: ../../boot.php:895
 msgid "Create a New Account"
 msgstr ""
 
-#: ../../boot.php:901
+#: ../../boot.php:923
 msgid "Nickname or Email address: "
 msgstr ""
 
-#: ../../boot.php:902
+#: ../../boot.php:924
 msgid "Password: "
 msgstr ""
 
-#: ../../boot.php:905
+#: ../../boot.php:927
 msgid "Or login using OpenID: "
 msgstr ""
 
-#: ../../boot.php:911
+#: ../../boot.php:933
 msgid "Forgot your password?"
 msgstr ""
 
-#: ../../boot.php:1078
+#: ../../boot.php:1100
 msgid "Edit profile"
 msgstr ""
 
-#: ../../boot.php:1138
+#: ../../boot.php:1160
 msgid "Message"
 msgstr ""
 
-#: ../../boot.php:1260 ../../boot.php:1346
+#: ../../boot.php:1282 ../../boot.php:1368
 msgid "g A l F d"
 msgstr ""
 
-#: ../../boot.php:1261 ../../boot.php:1347
+#: ../../boot.php:1283 ../../boot.php:1369
 msgid "F d"
 msgstr ""
 
-#: ../../boot.php:1306 ../../boot.php:1387
+#: ../../boot.php:1328 ../../boot.php:1409
 msgid "[today]"
 msgstr ""
 
-#: ../../boot.php:1318
+#: ../../boot.php:1340
 msgid "Birthday Reminders"
 msgstr ""
 
-#: ../../boot.php:1319
+#: ../../boot.php:1341
 msgid "Birthdays this week:"
 msgstr ""
 
-#: ../../boot.php:1380
+#: ../../boot.php:1402
 msgid "[No description]"
 msgstr ""
 
-#: ../../boot.php:1398
+#: ../../boot.php:1420
 msgid "Event Reminders"
 msgstr ""
 
-#: ../../boot.php:1399
+#: ../../boot.php:1421
 msgid "Events this week:"
 msgstr ""
 
-#: ../../boot.php:1613
+#: ../../boot.php:1638
 msgid "Status Messages and Posts"
 msgstr ""
 
-#: ../../boot.php:1620
+#: ../../boot.php:1645
 msgid "Profile Details"
 msgstr ""
 
-#: ../../boot.php:1637
+#: ../../boot.php:1662
 msgid "Events and Calendar"
 msgstr ""
 
-#: ../../boot.php:1644
+#: ../../boot.php:1669
 msgid "Only You Can See This"
 msgstr ""
index 3ca03262d4f1814cbd019f02ec074b6978a8b7e9..6564565f7ebfbb7501010000e93547af53471e2c 100644 (file)
@@ -6,6 +6,7 @@
                        autoDimensions: false,
                        onStart: function(){
                                var theme = $("#id_theme :selected").val();
+                               var theme_mobile = $("#id_theme_mobile :selected").val();
                                $("#cnftheme").attr('href',"$baseurl/admin/themes/"+theme);
                        }, 
                        onComplete: function(){
@@ -44,6 +45,7 @@
        {{ inc field_textarea.tpl with $field=$banner }}{{ endinc }}
        {{ inc field_select.tpl with $field=$language }}{{ endinc }}
        {{ inc field_select.tpl with $field=$theme }}{{ endinc }}
+       {{ inc field_select.tpl with $field=$theme_mobile }}{{ endinc }}
        {{ inc field_select.tpl with $field=$ssl_policy }}{{ endinc }}
        
        <div class="submit"><input type="submit" name="page_site" value="$submit" /></div>
@@ -60,6 +62,8 @@
 
        <h3>$upload</h3>
        {{ inc field_input.tpl with $field=$maximagesize }}{{ endinc }}
+       {{ inc field_input.tpl with $field=$maximagelength }}{{ endinc }}
+       {{ inc field_input.tpl with $field=$jpegimagequality }}{{ endinc }}
        
        <h3>$corporate</h3>
        {{ inc field_input.tpl with $field=$allowed_sites }}{{ endinc }}
@@ -71,6 +75,8 @@
        {{ inc field_checkbox.tpl with $field=$diaspora_enabled }}{{ endinc }}
        {{ inc field_checkbox.tpl with $field=$dfrn_only }}{{ endinc }}
        {{ inc field_input.tpl with $field=$global_directory }}{{ endinc }}
+       {{ inc field_checkbox.tpl with $field=$thread_allow }}{{ endinc }}
+       {{ inc field_checkbox.tpl with $field=$newuser_public }}{{ endinc }}
        
        <div class="submit"><input type="submit" name="page_site" value="$submit" /></div>
        
index 8db7d22f4b2e929f51083c2d6e0593cfb6e2d0e2..971680a8ccec58e2be7b5c99ea6208fd46f55ef2 100644 (file)
@@ -3,7 +3,7 @@
 <div id="birthday-wrapper" style="display: none;" ><div id="birthday-title">$event_title</div>
 <div id="birthday-title-end"></div>
 {{ for $events as $event }}
-<div class="birthday-list" id="birthday-$event.id"></a> <a href="$event.link">$event.title</a> $event.date </div>
+<div class="birthday-list" id="birthday-$event.id"> <a href="$event.link">$event.title</a> $event.date </div>
 {{ endfor }}
 </div>
 {{ endif }}
index a1d4e1043a3ba18e7cec9616d6ee5f8550cbf1c3..98173aa3067abc98f57255660f5f034d134ef95a 100644 (file)
@@ -1,5 +1,10 @@
                <div class="comment-wwedit-wrapper" id="comment-edit-wrapper-$id" style="display: block;">
-                       <form class="comment-edit-form" id="comment-edit-form-$id" action="item" method="post" onsubmit="post_comment($id); return false;">
+                       {{ if $threaded }}
+                       <span id="hide-commentbox-$id" class="hide-commentbox fakelink" onclick="showHideCommentBox($id);">$comment</span>
+                       <form class="comment-edit-form" style="display: none;" id="comment-edit-form-$id" action="item" method="post" onsubmit="post_comment($id); return false;">
+                       {{ else }}
+                       <form class="comment-edit-form" style="display: block;" id="comment-edit-form-$id" action="item" method="post" onsubmit="post_comment($id); return false;">
+                       {{ endif }}
                                <input type="hidden" name="type" value="$type" />
                                <input type="hidden" name="profile_uid" value="$profile_uid" />
                                <input type="hidden" name="parent" value="$parent" />
index 98ab65d61b34bbc69935e5aff5cbe3fd3f916ade..7ca3b565ff59f25e9694923b726f43ac20e5d9ba 100644 (file)
@@ -8,21 +8,23 @@
 # Fabian Dost <friends@dostmusik.de>, 2012.
 #   <friends@dostmusik.de>, 2012.
 #   <greeneyedred@googlemail.com>, 2012.
+# Hauke Zühl <hzuehl@phone-talk.de>, 2012.
 #   <hzuehl@phone-talk.de>, 2011, 2012.
 #   <leberwurscht@hoegners.de>, 2012.
 #   <marmor69@web.de>, 2012.
 # Martin Schmitt <mas@scsy.de>, 2012.
+# Oliver  <post@toktan.org>, 2012.
 #   <tobias.diekershoff@gmx.net>, 2011, 2012.
-#   <transifex@zottel.net>, 20112012.
+#   <transifex@zottel.net>, 2011-2012.
 #   <ts+transifex@ml.tschlotfeldt.de>, 2011.
 msgid ""
 msgstr ""
 "Project-Id-Version: friendica\n"
 "Report-Msgid-Bugs-To: http://bugs.friendica.com/\n"
-"POT-Creation-Date: 2012-06-17 10:00-0700\n"
-"PO-Revision-Date: 2012-06-18 22:04+0000\n"
-"Last-Translator: Fabian Dost <friends@dostmusik.de>\n"
-"Language-Team: German (http://www.transifex.net/projects/p/friendica/language/de/)\n"
+"POT-Creation-Date: 2012-08-28 10:00-0700\n"
+"PO-Revision-Date: 2012-08-31 23:04+0000\n"
+"Last-Translator: zottel <transifex@zottel.net>\n"
+"Language-Team: German (http://www.transifex.com/projects/p/friendica/language/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -47,28 +49,30 @@ msgid "Contact update failed."
 msgstr "Konnte den Kontakt nicht aktualisieren."
 
 #: ../../mod/crepair.php:115 ../../mod/wall_attach.php:44
-#: ../../mod/fsuggest.php:78 ../../mod/events.php:138 ../../mod/api.php:26
-#: ../../mod/api.php:31 ../../mod/photos.php:133 ../../mod/photos.php:928
-#: ../../mod/editpost.php:10 ../../mod/install.php:151
-#: ../../mod/notifications.php:66 ../../mod/contacts.php:145
-#: ../../mod/settings.php:106 ../../mod/settings.php:537
-#: ../../mod/settings.php:542 ../../mod/manage.php:86 ../../mod/network.php:6
+#: ../../mod/fsuggest.php:78 ../../mod/events.php:140 ../../mod/api.php:26
+#: ../../mod/api.php:31 ../../mod/photos.php:116 ../../mod/photos.php:938
+#: ../../mod/editpost.php:10 ../../mod/install.php:151 ../../mod/poke.php:135
+#: ../../mod/notifications.php:66 ../../mod/contacts.php:139
+#: ../../mod/settings.php:86 ../../mod/settings.php:519
+#: ../../mod/settings.php:524 ../../mod/manage.php:86 ../../mod/network.php:6
 #: ../../mod/notes.php:20 ../../mod/wallmessage.php:9
 #: ../../mod/wallmessage.php:33 ../../mod/wallmessage.php:79
 #: ../../mod/wallmessage.php:103 ../../mod/attach.php:33
 #: ../../mod/group.php:19 ../../mod/viewcontacts.php:22
-#: ../../mod/register.php:38 ../../mod/regmod.php:116 ../../mod/item.php:124
-#: ../../mod/item.php:140 ../../mod/profile_photo.php:19
-#: ../../mod/profile_photo.php:141 ../../mod/profile_photo.php:152
-#: ../../mod/profile_photo.php:165 ../../mod/message.php:45
-#: ../../mod/message.php:97 ../../mod/allfriends.php:9
-#: ../../mod/nogroup.php:25 ../../mod/wall_upload.php:53
-#: ../../mod/follow.php:9 ../../mod/display.php:138 ../../mod/profiles.php:7
-#: ../../mod/profiles.php:385 ../../mod/delegate.php:6
+#: ../../mod/register.php:38 ../../mod/regmod.php:116 ../../mod/item.php:126
+#: ../../mod/item.php:142 ../../mod/mood.php:114
+#: ../../mod/profile_photo.php:19 ../../mod/profile_photo.php:142
+#: ../../mod/profile_photo.php:153 ../../mod/profile_photo.php:166
+#: ../../mod/message.php:38 ../../mod/message.php:168
+#: ../../mod/allfriends.php:9 ../../mod/nogroup.php:25
+#: ../../mod/wall_upload.php:53 ../../mod/follow.php:9
+#: ../../mod/display.php:131 ../../mod/profiles.php:7
+#: ../../mod/profiles.php:413 ../../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:507
-#: ../../addon/dav/layout.fnk.php:353 ../../include/items.php:3387
-#: ../../index.php:299
+#: ../../mod/dfrn_confirm.php:53 ../../addon/facebook/facebook.php:510
+#: ../../addon/facebook/facebook.php:516
+#: ../../addon/dav/friendica/layout.fnk.php:354 ../../include/items.php:3819
+#: ../../index.php:315
 msgid "Permission denied."
 msgstr "Zugriff verweigert."
 
@@ -85,7 +89,7 @@ msgstr "Kontakteinstellungen reparieren"
 msgid ""
 "<strong>WARNING: This is highly advanced</strong> and if you enter incorrect"
 " information your communications with this contact may stop working."
-msgstr "<strong>ACHTUNG: Das sind Experten-Einstellungen!</strong> Wenn Du etwas Falsches eingibst, funktioniert die Kommunikation mit diesem Kontakt evtl. nicht mehr."
+msgstr "<strong>ACHTUNG: Das sind Experten-Einstellungen!</strong> Wenn du etwas Falsches eingibst, funktioniert die Kommunikation mit diesem Kontakt evtl. nicht mehr."
 
 #: ../../mod/crepair.php:138
 msgid ""
@@ -97,8 +101,8 @@ msgstr "Bitte nutze den Zurück-Button deines Browsers <strong>jetzt</strong>, w
 msgid "Return to contact editor"
 msgstr "Zurück zum Kontakteditor"
 
-#: ../../mod/crepair.php:148 ../../mod/settings.php:557
-#: ../../mod/settings.php:583 ../../mod/admin.php:659 ../../mod/admin.php:668
+#: ../../mod/crepair.php:148 ../../mod/settings.php:539
+#: ../../mod/settings.php:565 ../../mod/admin.php:679 ../../mod/admin.php:688
 msgid "Name"
 msgstr "Name"
 
@@ -135,31 +139,37 @@ msgid "New photo from this URL"
 msgstr "Neues Foto von dieser URL"
 
 #: ../../mod/crepair.php:166 ../../mod/fsuggest.php:107
-#: ../../mod/events.php:428 ../../mod/photos.php:963 ../../mod/photos.php:1021
-#: ../../mod/photos.php:1266 ../../mod/photos.php:1306
-#: ../../mod/photos.php:1346 ../../mod/photos.php:1377
+#: ../../mod/events.php:439 ../../mod/photos.php:971 ../../mod/photos.php:1042
+#: ../../mod/photos.php:1285 ../../mod/photos.php:1325
+#: ../../mod/photos.php:1366 ../../mod/photos.php:1398
 #: ../../mod/install.php:246 ../../mod/install.php:284
-#: ../../mod/localtime.php:45 ../../mod/contacts.php:343
-#: ../../mod/settings.php:555 ../../mod/settings.php:701
-#: ../../mod/settings.php:762 ../../mod/settings.php:969
-#: ../../mod/group.php:85 ../../mod/message.php:216 ../../mod/admin.php:420
-#: ../../mod/admin.php:656 ../../mod/admin.php:792 ../../mod/admin.php:991
-#: ../../mod/admin.php:1078 ../../mod/profiles.php:554
-#: ../../mod/invite.php:119 ../../addon/facebook/facebook.php:609
-#: ../../addon/snautofollow/snautofollow.php:64
+#: ../../mod/localtime.php:45 ../../mod/poke.php:199 ../../mod/content.php:691
+#: ../../mod/contacts.php:341 ../../mod/settings.php:537
+#: ../../mod/settings.php:691 ../../mod/settings.php:752
+#: ../../mod/settings.php:958 ../../mod/group.php:85 ../../mod/mood.php:137
+#: ../../mod/message.php:294 ../../mod/message.php:478 ../../mod/admin.php:435
+#: ../../mod/admin.php:676 ../../mod/admin.php:812 ../../mod/admin.php:1011
+#: ../../mod/admin.php:1098 ../../mod/profiles.php:583
+#: ../../mod/invite.php:119 ../../addon/fromgplus/fromgplus.php:40
+#: ../../addon/facebook/facebook.php:619
+#: ../../addon/snautofollow/snautofollow.php:64 ../../addon/bg/bg.php:90
 #: ../../addon/yourls/yourls.php:76 ../../addon/ljpost/ljpost.php:93
-#: ../../addon/nsfw/nsfw.php:57 ../../addon/planets/planets.php:158
+#: ../../addon/nsfw/nsfw.php:57 ../../addon/page/page.php:210
+#: ../../addon/planets/planets.php:158
 #: ../../addon/uhremotestorage/uhremotestorage.php:89
 #: ../../addon/randplace/randplace.php:177 ../../addon/dwpost/dwpost.php:93
 #: ../../addon/drpost/drpost.php:110 ../../addon/startpage/startpage.php:92
 #: ../../addon/geonames/geonames.php:187 ../../addon/oembed.old/oembed.php:41
+#: ../../addon/forumlist/forumlist.php:169
 #: ../../addon/impressum/impressum.php:82
 #: ../../addon/notimeline/notimeline.php:64 ../../addon/blockem/blockem.php:57
 #: ../../addon/qcomment/qcomment.php:61
 #: ../../addon/openstreetmap/openstreetmap.php:70
-#: ../../addon/libertree/libertree.php:90 ../../addon/mathjax/mathjax.php:42
-#: ../../addon/editplain/editplain.php:84 ../../addon/blackout/blackout.php:98
-#: ../../addon/gravatar/gravatar.php:86
+#: ../../addon/group_text/group_text.php:84
+#: ../../addon/libravatar/libravatar.php:99
+#: ../../addon/libertree/libertree.php:90 ../../addon/altpager/altpager.php:87
+#: ../../addon/mathjax/mathjax.php:42 ../../addon/editplain/editplain.php:84
+#: ../../addon/blackout/blackout.php:98 ../../addon/gravatar/gravatar.php:95
 #: ../../addon/pageheader/pageheader.php:55 ../../addon/ijpost/ijpost.php:93
 #: ../../addon/jappixmini/jappixmini.php:302
 #: ../../addon/statusnet/statusnet.php:278
@@ -167,18 +177,18 @@ msgstr "Neues Foto von dieser URL"
 #: ../../addon/statusnet/statusnet.php:318
 #: ../../addon/statusnet/statusnet.php:325
 #: ../../addon/statusnet/statusnet.php:353
-#: ../../addon/statusnet/statusnet.php:561 ../../addon/tumblr/tumblr.php:90
+#: ../../addon/statusnet/statusnet.php:576 ../../addon/tumblr/tumblr.php:90
 #: ../../addon/numfriends/numfriends.php:85 ../../addon/gnot/gnot.php:88
 #: ../../addon/wppost/wppost.php:110 ../../addon/showmore/showmore.php:48
 #: ../../addon/piwik/piwik.php:89 ../../addon/twitter/twitter.php:180
-#: ../../addon/twitter/twitter.php:209 ../../addon/twitter/twitter.php:381
+#: ../../addon/twitter/twitter.php:209 ../../addon/twitter/twitter.php:394
 #: ../../addon/irc/irc.php:55 ../../addon/blogger/blogger.php:102
 #: ../../addon/posterous/posterous.php:103
 #: ../../view/theme/cleanzero/config.php:80
 #: ../../view/theme/diabook/theme.php:757
 #: ../../view/theme/diabook/config.php:190
 #: ../../view/theme/quattro/config.php:52 ../../view/theme/dispy/config.php:70
-#: ../../include/conversation.php:580
+#: ../../include/conversation.php:560
 msgid "Submit"
 msgstr "Senden"
 
@@ -186,16 +196,16 @@ msgstr "Senden"
 msgid "Help:"
 msgstr "Hilfe:"
 
-#: ../../mod/help.php:34 ../../addon/dav/layout.fnk.php:116
+#: ../../mod/help.php:34 ../../addon/dav/friendica/layout.fnk.php:225
 #: ../../include/nav.php:86
 msgid "Help"
 msgstr "Hilfe"
 
-#: ../../mod/help.php:38 ../../index.php:218
+#: ../../mod/help.php:38 ../../index.php:224
 msgid "Not Found"
 msgstr "Nicht gefunden"
 
-#: ../../mod/help.php:41 ../../index.php:221
+#: ../../mod/help.php:41 ../../index.php:227
 msgid "Page not found."
 msgstr "Seite nicht gefunden."
 
@@ -204,7 +214,7 @@ msgstr "Seite nicht gefunden."
 msgid "File exceeds size limit of %d"
 msgstr "Die Datei ist größer als das erlaubte Limit von %d"
 
-#: ../../mod/wall_attach.php:86 ../../mod/wall_attach.php:97
+#: ../../mod/wall_attach.php:99 ../../mod/wall_attach.php:110
 msgid "File upload failed."
 msgstr "Hochladen der Datei fehlgeschlagen."
 
@@ -221,85 +231,94 @@ msgstr "Kontakte vorschlagen"
 msgid "Suggest a friend for %s"
 msgstr "Schlage %s einen Kontakt vor"
 
-#: ../../mod/events.php:65
-msgid "Event description and start time are required."
-msgstr "Ereignisbeschreibung und Startzeit sind erforderlich."
+#: ../../mod/events.php:66
+msgid "Event title and start time are required."
+msgstr "Der Veranstaltungstitel und die Anfangszeit müssen angegeben werden."
 
-#: ../../mod/events.php:258
+#: ../../mod/events.php:263
 msgid "l, F j"
 msgstr "l, F j"
 
-#: ../../mod/events.php:280
+#: ../../mod/events.php:285
 msgid "Edit event"
 msgstr "Veranstaltung bearbeiten"
 
-#: ../../mod/events.php:300 ../../include/text.php:1065
+#: ../../mod/events.php:307 ../../include/text.php:1147
 msgid "link to source"
 msgstr "Link zum Originalbeitrag"
 
-#: ../../mod/events.php:324 ../../view/theme/diabook/theme.php:131
-#: ../../include/nav.php:52 ../../boot.php:1529
+#: ../../mod/events.php:331 ../../view/theme/diabook/theme.php:131
+#: ../../include/nav.php:52 ../../boot.php:1659
 msgid "Events"
 msgstr "Veranstaltungen"
 
-#: ../../mod/events.php:325
+#: ../../mod/events.php:332
 msgid "Create New Event"
 msgstr "Neue Veranstaltung erstellen"
 
-#: ../../mod/events.php:326 ../../addon/dav/layout.fnk.php:154
+#: ../../mod/events.php:333 ../../addon/dav/friendica/layout.fnk.php:263
 msgid "Previous"
 msgstr "Vorherige"
 
-#: ../../mod/events.php:327 ../../mod/install.php:205
-#: ../../addon/dav/layout.fnk.php:157
+#: ../../mod/events.php:334 ../../mod/install.php:205
+#: ../../addon/dav/friendica/layout.fnk.php:266
 msgid "Next"
 msgstr "Nächste"
 
-#: ../../mod/events.php:399
+#: ../../mod/events.php:407
 msgid "hour:minute"
 msgstr "Stunde:Minute"
 
-#: ../../mod/events.php:408
+#: ../../mod/events.php:417
 msgid "Event details"
 msgstr "Veranstaltungsdetails"
 
-#: ../../mod/events.php:409
+#: ../../mod/events.php:418
 #, php-format
-msgid "Format is %s %s. Starting date and Description are required."
-msgstr "Format ist %s %s. Anfangsdatum und Beschreibung sind notwendig."
+msgid "Format is %s %s. Starting date and Title are required."
+msgstr "Das Format ist %s %s. Beginnzeitpunkt und Titel werden benötigt."
 
-#: ../../mod/events.php:411
+#: ../../mod/events.php:420
 msgid "Event Starts:"
 msgstr "Veranstaltungsbeginn:"
 
-#: ../../mod/events.php:414
+#: ../../mod/events.php:420 ../../mod/events.php:434
+msgid "Required"
+msgstr "Benötigt"
+
+#: ../../mod/events.php:423
 msgid "Finish date/time is not known or not relevant"
 msgstr "Enddatum/-zeit ist nicht bekannt oder nicht relevant"
 
-#: ../../mod/events.php:416
+#: ../../mod/events.php:425
 msgid "Event Finishes:"
 msgstr "Veranstaltungsende:"
 
-#: ../../mod/events.php:419
+#: ../../mod/events.php:428
 msgid "Adjust for viewer timezone"
 msgstr "An Zeitzone des Betrachters anpassen"
 
-#: ../../mod/events.php:421
+#: ../../mod/events.php:430
 msgid "Description:"
 msgstr "Beschreibung"
 
-#: ../../mod/events.php:423 ../../include/event.php:37
-#: ../../include/bb2diaspora.php:265 ../../boot.php:1109
+#: ../../mod/events.php:432 ../../mod/directory.php:132
+#: ../../include/event.php:40 ../../include/bb2diaspora.php:455
+#: ../../boot.php:1208
 msgid "Location:"
 msgstr "Ort:"
 
-#: ../../mod/events.php:425
+#: ../../mod/events.php:434
+msgid "Title:"
+msgstr "Titel:"
+
+#: ../../mod/events.php:436
 msgid "Share this event"
 msgstr "Veranstaltung teilen"
 
 #: ../../mod/tagrm.php:11 ../../mod/tagrm.php:94
-#: ../../mod/dfrn_request.php:845 ../../mod/settings.php:556
-#: ../../mod/settings.php:582 ../../addon/js_upload/js_upload.php:45
+#: ../../mod/dfrn_request.php:845 ../../mod/settings.php:538
+#: ../../mod/settings.php:564 ../../addon/js_upload/js_upload.php:45
 msgid "Cancel"
 msgstr "Abbrechen"
 
@@ -316,6 +335,7 @@ msgid "Select a tag to remove: "
 msgstr "Wähle ein Tag zum Entfernen aus: "
 
 #: ../../mod/tagrm.php:93 ../../mod/delegate.php:130
+#: ../../addon/dav/common/wdcal_edit.inc.php:468
 msgid "Remove"
 msgstr "Entfernen"
 
@@ -343,255 +363,276 @@ msgid ""
 msgstr "Möchtest du dieser Anwendung den Zugriff auf deine Beiträge und Kontakte, sowie das Erstellen neuer Beiträge in deinem Namen gestatten?"
 
 #: ../../mod/api.php:105 ../../mod/dfrn_request.php:833
-#: ../../mod/settings.php:879 ../../mod/settings.php:885
-#: ../../mod/settings.php:893 ../../mod/settings.php:897
-#: ../../mod/settings.php:902 ../../mod/settings.php:908
-#: ../../mod/settings.php:914 ../../mod/settings.php:920
-#: ../../mod/settings.php:956 ../../mod/settings.php:957
-#: ../../mod/settings.php:958 ../../mod/settings.php:959
-#: ../../mod/settings.php:960 ../../mod/register.php:234
-#: ../../mod/profiles.php:531
+#: ../../mod/settings.php:874 ../../mod/settings.php:880
+#: ../../mod/settings.php:888 ../../mod/settings.php:892
+#: ../../mod/settings.php:897 ../../mod/settings.php:903
+#: ../../mod/settings.php:909 ../../mod/settings.php:915
+#: ../../mod/settings.php:945 ../../mod/settings.php:946
+#: ../../mod/settings.php:947 ../../mod/settings.php:948
+#: ../../mod/settings.php:949 ../../mod/register.php:234
+#: ../../mod/profiles.php:563
 msgid "Yes"
 msgstr "Ja"
 
 #: ../../mod/api.php:106 ../../mod/dfrn_request.php:834
-#: ../../mod/settings.php:879 ../../mod/settings.php:885
-#: ../../mod/settings.php:893 ../../mod/settings.php:897
-#: ../../mod/settings.php:902 ../../mod/settings.php:908
-#: ../../mod/settings.php:914 ../../mod/settings.php:920
-#: ../../mod/settings.php:956 ../../mod/settings.php:957
-#: ../../mod/settings.php:958 ../../mod/settings.php:959
-#: ../../mod/settings.php:960 ../../mod/register.php:235
-#: ../../mod/profiles.php:532
+#: ../../mod/settings.php:874 ../../mod/settings.php:880
+#: ../../mod/settings.php:888 ../../mod/settings.php:892
+#: ../../mod/settings.php:897 ../../mod/settings.php:903
+#: ../../mod/settings.php:909 ../../mod/settings.php:915
+#: ../../mod/settings.php:945 ../../mod/settings.php:946
+#: ../../mod/settings.php:947 ../../mod/settings.php:948
+#: ../../mod/settings.php:949 ../../mod/register.php:235
+#: ../../mod/profiles.php:564
 msgid "No"
 msgstr "Nein"
 
-#: ../../mod/photos.php:44 ../../boot.php:1523
+#: ../../mod/photos.php:46 ../../boot.php:1652
 msgid "Photo Albums"
 msgstr "Fotoalben"
 
-#: ../../mod/photos.php:52 ../../mod/photos.php:154 ../../mod/photos.php:942
-#: ../../mod/photos.php:1013 ../../mod/photos.php:1028
-#: ../../mod/photos.php:1455 ../../mod/photos.php:1467
+#: ../../mod/photos.php:54 ../../mod/photos.php:137 ../../mod/photos.php:952
+#: ../../mod/photos.php:1034 ../../mod/photos.php:1049
+#: ../../mod/photos.php:1477 ../../mod/photos.php:1489
 #: ../../addon/communityhome/communityhome.php:110
 #: ../../view/theme/diabook/theme.php:598
 msgid "Contact Photos"
 msgstr "Kontaktbilder"
 
-#: ../../mod/photos.php:59 ../../mod/photos.php:1038 ../../mod/photos.php:1505
+#: ../../mod/photos.php:61 ../../mod/photos.php:1059 ../../mod/photos.php:1527
 msgid "Upload New Photos"
 msgstr "Weitere Fotos hochladen"
 
-#: ../../mod/photos.php:70 ../../mod/settings.php:21
+#: ../../mod/photos.php:74 ../../mod/settings.php:23
 msgid "everybody"
 msgstr "jeder"
 
-#: ../../mod/photos.php:143
+#: ../../mod/photos.php:126
 msgid "Contact information unavailable"
 msgstr "Kontaktinformationen nicht verfügbar"
 
-#: ../../mod/photos.php:154 ../../mod/photos.php:656 ../../mod/photos.php:1013
-#: ../../mod/photos.php:1028 ../../mod/profile_photo.php:60
+#: ../../mod/photos.php:137 ../../mod/photos.php:641 ../../mod/photos.php:1034
+#: ../../mod/photos.php:1049 ../../mod/profile_photo.php:60
 #: ../../mod/profile_photo.php:67 ../../mod/profile_photo.php:74
-#: ../../mod/profile_photo.php:176 ../../mod/profile_photo.php:254
-#: ../../mod/profile_photo.php:263
+#: ../../mod/profile_photo.php:177 ../../mod/profile_photo.php:261
+#: ../../mod/profile_photo.php:270
 #: ../../addon/communityhome/communityhome.php:111
-#: ../../view/theme/diabook/theme.php:599 ../../include/user.php:298
-#: ../../include/user.php:305 ../../include/user.php:312
+#: ../../view/theme/diabook/theme.php:599 ../../include/user.php:304
+#: ../../include/user.php:311 ../../include/user.php:318
 msgid "Profile Photos"
 msgstr "Profilbilder"
 
-#: ../../mod/photos.php:164
+#: ../../mod/photos.php:147
 msgid "Album not found."
 msgstr "Album nicht gefunden."
 
-#: ../../mod/photos.php:182 ../../mod/photos.php:1022
+#: ../../mod/photos.php:165 ../../mod/photos.php:1043
 msgid "Delete Album"
 msgstr "Album löschen"
 
-#: ../../mod/photos.php:245 ../../mod/photos.php:1267
+#: ../../mod/photos.php:228 ../../mod/photos.php:1286
 msgid "Delete Photo"
 msgstr "Foto löschen"
 
-#: ../../mod/photos.php:587
+#: ../../mod/photos.php:572
 msgid "was tagged in a"
 msgstr "wurde getaggt in einem"
 
-#: ../../mod/photos.php:587 ../../mod/like.php:185 ../../mod/tagger.php:70
+#: ../../mod/photos.php:572 ../../mod/like.php:145 ../../mod/tagger.php:70
 #: ../../addon/communityhome/communityhome.php:163
-#: ../../view/theme/diabook/theme.php:570 ../../include/text.php:1316
-#: ../../include/diaspora.php:1709 ../../include/conversation.php:53
-#: ../../include/conversation.php:126
+#: ../../view/theme/diabook/theme.php:570 ../../include/text.php:1399
+#: ../../include/diaspora.php:1824 ../../include/conversation.php:114
+#: ../../include/conversation.php:244
 msgid "photo"
 msgstr "Foto"
 
-#: ../../mod/photos.php:587
+#: ../../mod/photos.php:572
 msgid "by"
 msgstr "von"
 
-#: ../../mod/photos.php:692 ../../addon/js_upload/js_upload.php:315
+#: ../../mod/photos.php:677 ../../addon/js_upload/js_upload.php:315
 msgid "Image exceeds size limit of "
 msgstr "Die Bildgröße Ã¼bersteigt das Limit von "
 
-#: ../../mod/photos.php:700
+#: ../../mod/photos.php:685
 msgid "Image file is empty."
 msgstr "Bilddatei ist leer."
 
-#: ../../mod/photos.php:714 ../../mod/profile_photo.php:126
-#: ../../mod/wall_upload.php:86
+#: ../../mod/photos.php:717 ../../mod/profile_photo.php:126
+#: ../../mod/wall_upload.php:99
 msgid "Unable to process image."
 msgstr "Konnte das Bild nicht bearbeiten."
 
-#: ../../mod/photos.php:734 ../../mod/profile_photo.php:259
-#: ../../mod/wall_upload.php:105
+#: ../../mod/photos.php:744 ../../mod/profile_photo.php:266
+#: ../../mod/wall_upload.php:125
 msgid "Image upload failed."
 msgstr "Hochladen des Bildes gescheitert."
 
-#: ../../mod/photos.php:820 ../../mod/community.php:16
+#: ../../mod/photos.php:830 ../../mod/community.php:16
 #: ../../mod/dfrn_request.php:759 ../../mod/viewcontacts.php:17
 #: ../../mod/display.php:7 ../../mod/search.php:71 ../../mod/directory.php:29
 msgid "Public access denied."
 msgstr "Öffentlicher Zugriff verweigert."
 
-#: ../../mod/photos.php:830
+#: ../../mod/photos.php:840
 msgid "No photos selected"
 msgstr "Keine Bilder ausgewählt"
 
-#: ../../mod/photos.php:909
+#: ../../mod/photos.php:919
 msgid "Access to this item is restricted."
 msgstr "Zugriff zu diesem Eintrag wurde eingeschränkt."
 
-#: ../../mod/photos.php:970
+#: ../../mod/photos.php:981
+#, php-format
+msgid "You have used %1$.2f Mbytes of %2$.2f Mbytes photo storage."
+msgstr "Du verwendest %1$.2f Mbyte von %2$.2f Mbyte des Foto-Speichers."
+
+#: ../../mod/photos.php:984
+#, php-format
+msgid "You have used %1$.2f Mbytes of photo storage."
+msgstr "Du verwendest %1$.2f Mbyte des Foto-Speichers."
+
+#: ../../mod/photos.php:990
 msgid "Upload Photos"
 msgstr "Bilder hochladen"
 
-#: ../../mod/photos.php:973 ../../mod/photos.php:1017
+#: ../../mod/photos.php:994 ../../mod/photos.php:1038
 msgid "New album name: "
 msgstr "Name des neuen Albums: "
 
-#: ../../mod/photos.php:974
+#: ../../mod/photos.php:995
 msgid "or existing album name: "
 msgstr "oder existierender Albumname: "
 
-#: ../../mod/photos.php:975
+#: ../../mod/photos.php:996
 msgid "Do not show a status post for this upload"
 msgstr "Keine Status-Mitteilung für diesen Beitrag anzeigen"
 
-#: ../../mod/photos.php:977 ../../mod/photos.php:1262
+#: ../../mod/photos.php:998 ../../mod/photos.php:1281
 msgid "Permissions"
 msgstr "Berechtigungen"
 
-#: ../../mod/photos.php:1032
+#: ../../mod/photos.php:1053
 msgid "Edit Album"
 msgstr "Album bearbeiten"
 
-#: ../../mod/photos.php:1056 ../../mod/photos.php:1488
+#: ../../mod/photos.php:1077 ../../mod/photos.php:1510
 msgid "View Photo"
 msgstr "Fotos betrachten"
 
-#: ../../mod/photos.php:1091
+#: ../../mod/photos.php:1112
 msgid "Permission denied. Access to this item may be restricted."
 msgstr "Zugriff verweigert. Zugriff zu diesem Eintrag könnte eingeschränkt sein."
 
-#: ../../mod/photos.php:1093
+#: ../../mod/photos.php:1114
 msgid "Photo not available"
 msgstr "Foto nicht verfügbar"
 
-#: ../../mod/photos.php:1143
+#: ../../mod/photos.php:1164
 msgid "View photo"
 msgstr "Fotos ansehen"
 
-#: ../../mod/photos.php:1143
+#: ../../mod/photos.php:1164
 msgid "Edit photo"
 msgstr "Foto bearbeiten"
 
-#: ../../mod/photos.php:1144
+#: ../../mod/photos.php:1165
 msgid "Use as profile photo"
 msgstr "Als Profilbild verwenden"
 
-#: ../../mod/photos.php:1150 ../../include/conversation.php:490
+#: ../../mod/photos.php:1171 ../../mod/content.php:601
+#: ../../include/conversation.php:395
 msgid "Private Message"
 msgstr "Private Nachricht"
 
-#: ../../mod/photos.php:1172
+#: ../../mod/photos.php:1190
 msgid "View Full Size"
 msgstr "Betrachte Originalgröße"
 
-#: ../../mod/photos.php:1240
+#: ../../mod/photos.php:1258
 msgid "Tags: "
 msgstr "Tags: "
 
-#: ../../mod/photos.php:1243
+#: ../../mod/photos.php:1261
 msgid "[Remove any tag]"
 msgstr "[Tag entfernen]"
 
-#: ../../mod/photos.php:1253
-msgid "Rotate CW"
-msgstr "Im Uhrzeigersinn rotieren"
+#: ../../mod/photos.php:1271
+msgid "Rotate CW (right)"
+msgstr "Drehen US (rechts)"
 
-#: ../../mod/photos.php:1255
+#: ../../mod/photos.php:1272
+msgid "Rotate CCW (left)"
+msgstr "Drehen EUS (links)"
+
+#: ../../mod/photos.php:1274
 msgid "New album name"
 msgstr "Name des neuen Albums"
 
-#: ../../mod/photos.php:1258
+#: ../../mod/photos.php:1277
 msgid "Caption"
 msgstr "Bildunterschrift"
 
-#: ../../mod/photos.php:1260
+#: ../../mod/photos.php:1279
 msgid "Add a Tag"
 msgstr "Tag hinzufügen"
 
-#: ../../mod/photos.php:1264
+#: ../../mod/photos.php:1283
 msgid ""
 "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping"
 msgstr "Beispiel: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping"
 
-#: ../../mod/photos.php:1284 ../../include/conversation.php:554
+#: ../../mod/photos.php:1303 ../../mod/content.php:665
+#: ../../include/conversation.php:534
 msgid "I like this (toggle)"
 msgstr "Ich mag das (toggle)"
 
-#: ../../mod/photos.php:1285 ../../include/conversation.php:555
+#: ../../mod/photos.php:1304 ../../mod/content.php:666
+#: ../../include/conversation.php:535
 msgid "I don't like this (toggle)"
 msgstr "Ich mag das nicht (toggle)"
 
-#: ../../mod/photos.php:1286 ../../include/conversation.php:989
+#: ../../mod/photos.php:1305 ../../include/conversation.php:1164
 msgid "Share"
 msgstr "Teilen"
 
-#: ../../mod/photos.php:1287 ../../mod/editpost.php:104
-#: ../../mod/wallmessage.php:145 ../../mod/message.php:215
-#: ../../mod/message.php:410 ../../include/conversation.php:371
-#: ../../include/conversation.php:731 ../../include/conversation.php:1008
+#: ../../mod/photos.php:1306 ../../mod/editpost.php:112
+#: ../../mod/content.php:482 ../../mod/content.php:843
+#: ../../mod/wallmessage.php:152 ../../mod/message.php:293
+#: ../../mod/message.php:479 ../../include/conversation.php:628
+#: ../../include/conversation.php:860 ../../include/conversation.php:1183
 msgid "Please wait"
 msgstr "Bitte warten"
 
-#: ../../mod/photos.php:1303 ../../mod/photos.php:1343
-#: ../../mod/photos.php:1374 ../../include/conversation.php:577
+#: ../../mod/photos.php:1322 ../../mod/photos.php:1363
+#: ../../mod/photos.php:1395 ../../mod/content.php:688
+#: ../../include/conversation.php:557
 msgid "This is you"
 msgstr "Das bist du"
 
-#: ../../mod/photos.php:1305 ../../mod/photos.php:1345
-#: ../../mod/photos.php:1376 ../../include/conversation.php:579
-#: ../../boot.php:523
+#: ../../mod/photos.php:1324 ../../mod/photos.php:1365
+#: ../../mod/photos.php:1397 ../../mod/content.php:690
+#: ../../include/conversation.php:559 ../../boot.php:583
 msgid "Comment"
 msgstr "Kommentar"
 
-#: ../../mod/photos.php:1307 ../../mod/editpost.php:125
-#: ../../include/conversation.php:589 ../../include/conversation.php:1026
+#: ../../mod/photos.php:1326 ../../mod/editpost.php:133
+#: ../../mod/content.php:700 ../../include/conversation.php:569
+#: ../../include/conversation.php:1201
 msgid "Preview"
 msgstr "Vorschau"
 
-#: ../../mod/photos.php:1404 ../../mod/settings.php:618
-#: ../../mod/settings.php:699 ../../mod/group.php:168 ../../mod/admin.php:663
-#: ../../include/conversation.php:328 ../../include/conversation.php:609
+#: ../../mod/photos.php:1426 ../../mod/content.php:439
+#: ../../mod/content.php:721 ../../mod/settings.php:600
+#: ../../mod/settings.php:689 ../../mod/group.php:168 ../../mod/admin.php:683
+#: ../../include/conversation.php:409 ../../include/conversation.php:816
 msgid "Delete"
 msgstr "Löschen"
 
-#: ../../mod/photos.php:1494
+#: ../../mod/photos.php:1516
 msgid "View Album"
 msgstr "Album betrachten"
 
-#: ../../mod/photos.php:1503
+#: ../../mod/photos.php:1525
 msgid "Recent Photos"
 msgstr "Neueste Fotos"
 
@@ -604,7 +645,8 @@ msgstr "Nicht verfügbar."
 msgid "Community"
 msgstr "Gemeinschaft"
 
-#: ../../mod/community.php:61 ../../mod/search.php:144
+#: ../../mod/community.php:61 ../../mod/community.php:86
+#: ../../mod/search.php:146 ../../mod/search.php:172
 msgid "No results."
 msgstr "Keine Ergebnisse."
 
@@ -648,72 +690,72 @@ msgstr "Beitrag nicht gefunden"
 msgid "Edit post"
 msgstr "Beitrag bearbeiten"
 
-#: ../../mod/editpost.php:80 ../../include/conversation.php:975
+#: ../../mod/editpost.php:88 ../../include/conversation.php:1150
 msgid "Post to Email"
 msgstr "An E-Mail senden"
 
-#: ../../mod/editpost.php:95 ../../mod/settings.php:617
-#: ../../include/conversation.php:596
+#: ../../mod/editpost.php:103 ../../mod/content.php:708
+#: ../../mod/settings.php:599 ../../include/conversation.php:400
 msgid "Edit"
 msgstr "Bearbeiten"
 
-#: ../../mod/editpost.php:96 ../../mod/wallmessage.php:143
-#: ../../mod/message.php:213 ../../mod/message.php:408
-#: ../../include/conversation.php:990
+#: ../../mod/editpost.php:104 ../../mod/wallmessage.php:150
+#: ../../mod/message.php:291 ../../mod/message.php:476
+#: ../../include/conversation.php:1165
 msgid "Upload photo"
 msgstr "Foto hochladen"
 
-#: ../../mod/editpost.php:97 ../../include/conversation.php:992
+#: ../../mod/editpost.php:105 ../../include/conversation.php:1167
 msgid "Attach file"
 msgstr "Datei anhängen"
 
-#: ../../mod/editpost.php:98 ../../mod/wallmessage.php:144
-#: ../../mod/message.php:214 ../../mod/message.php:409
-#: ../../include/conversation.php:994
+#: ../../mod/editpost.php:106 ../../mod/wallmessage.php:151
+#: ../../mod/message.php:292 ../../mod/message.php:477
+#: ../../include/conversation.php:1169
 msgid "Insert web link"
 msgstr "einen Link einfügen"
 
-#: ../../mod/editpost.php:99
+#: ../../mod/editpost.php:107
 msgid "Insert YouTube video"
 msgstr "YouTube-Video einfügen"
 
-#: ../../mod/editpost.php:100
+#: ../../mod/editpost.php:108
 msgid "Insert Vorbis [.ogg] video"
 msgstr "Vorbis [.ogg] Video einfügen"
 
-#: ../../mod/editpost.php:101
+#: ../../mod/editpost.php:109
 msgid "Insert Vorbis [.ogg] audio"
 msgstr "Vorbis [.ogg] Audio einfügen"
 
-#: ../../mod/editpost.php:102 ../../include/conversation.php:1000
+#: ../../mod/editpost.php:110 ../../include/conversation.php:1175
 msgid "Set your location"
 msgstr "Deinen Standort festlegen"
 
-#: ../../mod/editpost.php:103 ../../include/conversation.php:1002
+#: ../../mod/editpost.php:111 ../../include/conversation.php:1177
 msgid "Clear browser location"
 msgstr "Browser-Standort leeren"
 
-#: ../../mod/editpost.php:105 ../../include/conversation.php:1009
+#: ../../mod/editpost.php:113 ../../include/conversation.php:1184
 msgid "Permission settings"
 msgstr "Berechtigungseinstellungen"
 
-#: ../../mod/editpost.php:113 ../../include/conversation.php:1018
+#: ../../mod/editpost.php:121 ../../include/conversation.php:1193
 msgid "CC: email addresses"
 msgstr "Cc:-E-Mail-Addressen"
 
-#: ../../mod/editpost.php:114 ../../include/conversation.php:1019
+#: ../../mod/editpost.php:122 ../../include/conversation.php:1194
 msgid "Public post"
 msgstr "Öffentlicher Beitrag"
 
-#: ../../mod/editpost.php:117 ../../include/conversation.php:1005
+#: ../../mod/editpost.php:125 ../../include/conversation.php:1180
 msgid "Set title"
 msgstr "Titel setzen"
 
-#: ../../mod/editpost.php:119 ../../include/conversation.php:1007
+#: ../../mod/editpost.php:127 ../../include/conversation.php:1182
 msgid "Categories (comma-separated list)"
 msgstr "Kategorien (kommasepariert)"
 
-#: ../../mod/editpost.php:120 ../../include/conversation.php:1021
+#: ../../mod/editpost.php:128 ../../include/conversation.php:1196
 msgid "Example: bob@example.com, mary@example.com"
 msgstr "Z.B.: bob@example.com, mary@example.com"
 
@@ -798,7 +840,7 @@ msgstr "Ungültige Profil-URL."
 msgid "Disallowed profile URL."
 msgstr "Nicht erlaubte Profil-URL."
 
-#: ../../mod/dfrn_request.php:570 ../../mod/contacts.php:122
+#: ../../mod/dfrn_request.php:570 ../../mod/contacts.php:116
 msgid "Failed to update contact record."
 msgstr "Aktualisierung der Kontaktdaten fehlgeschlagen."
 
@@ -818,7 +860,7 @@ msgstr "Momentan bist du mit einer anderen Identität angemeldet. Bitte melde Di
 
 #: ../../mod/dfrn_request.php:669
 msgid "Hide this contact"
-msgstr "Verberge diese Kontakt"
+msgstr "Verberge diesen Kontakt"
 
 #: ../../mod/dfrn_request.php:672
 #, php-format
@@ -834,7 +876,7 @@ msgstr "Bitte bestätige deine Kontaktanfrage bei %s."
 msgid "Confirm"
 msgstr "Bestätigen"
 
-#: ../../mod/dfrn_request.php:715 ../../include/items.php:2783
+#: ../../mod/dfrn_request.php:715 ../../include/items.php:3210
 msgid "[Name Withheld]"
 msgstr "[Name unterdrückt]"
 
@@ -886,7 +928,7 @@ msgstr "Friendica"
 msgid "StatusNet/Federated Social Web"
 msgstr "StatusNet/Federated Social Web"
 
-#: ../../mod/dfrn_request.php:839 ../../mod/settings.php:652
+#: ../../mod/dfrn_request.php:839 ../../mod/settings.php:634
 #: ../../include/contact_selectors.php:80
 msgid "Diaspora"
 msgstr "Diaspora"
@@ -920,7 +962,7 @@ msgstr "Konnte Tabelle nicht erstellen."
 
 #: ../../mod/install.php:133
 msgid "Your Friendica site database has been installed."
-msgstr "Die Datenbank deiner Friendica Seite wurde installiert."
+msgstr "Die Datenbank deiner Friendicaseite wurde installiert."
 
 #: ../../mod/install.php:138
 msgid ""
@@ -1016,7 +1058,7 @@ msgstr "Pfad zu PHP"
 msgid ""
 "Enter full path to php executable. You can leave this blank to continue the "
 "installation."
-msgstr "Gib den kompletten Pfad zur ausführbaren Datei von PHP an. Du kannst diesen Feld auch frei lassen und mit der Installation fortfahren."
+msgstr "Gib den kompletten Pfad zur ausführbaren Datei von PHP an. Du kannst dieses Feld auch frei lassen und mit der Installation fortfahren."
 
 #: ../../mod/install.php:328
 msgid "Command line PHP"
@@ -1083,7 +1125,7 @@ msgstr "Fehler: Das Apache-Modul mod-rewrite wird benötigt, es ist allerdings n
 
 #: ../../mod/install.php:388
 msgid "Error: libCURL PHP module required but not installed."
-msgstr "Fehler: Das libCURL PHP Modul wird benötigt ist aber nicht installiert."
+msgstr "Fehler: Das libCURL PHP Modul wird benötigt, ist aber nicht installiert."
 
 #: ../../mod/install.php:392
 msgid ""
@@ -1112,7 +1154,7 @@ msgstr "Der Installationswizard muss in der Lage sein, eine Datei im Stammverzei
 msgid ""
 "This is most often a permission setting, as the web server may not be able "
 "to write files in your folder - even if you can."
-msgstr "In den meisten Fällen ist dies ein Problem mit den Schreibrechten, der Webserver könnte keine Schreiberlaubnis haben, selbst wenn du sie hast."
+msgstr "In den meisten Fällen ist dies ein Problem mit den Schreibrechten. Der Webserver könnte keine Schreiberlaubnis haben, selbst wenn du sie hast."
 
 #: ../../mod/install.php:423
 msgid ""
@@ -1161,7 +1203,7 @@ msgid ""
 msgstr "WICHTIG: Du musst [manuell] einen Cronjob (o.ä.) für den Poller einrichten."
 
 #: ../../mod/localtime.php:12 ../../include/event.php:11
-#: ../../include/bb2diaspora.php:243
+#: ../../include/bb2diaspora.php:433
 msgid "l F d, Y \\@ g:i A"
 msgstr "l F d, Y \\@ g:i A"
 
@@ -1194,6 +1236,26 @@ msgstr "Umgerechnete lokale Zeit: %s"
 msgid "Please select your timezone:"
 msgstr "Bitte wähle deine Zeitzone."
 
+#: ../../mod/poke.php:192
+msgid "Poke/Prod"
+msgstr "Anstupsen etc."
+
+#: ../../mod/poke.php:193
+msgid "poke, prod or do other things to somebody"
+msgstr "Stupse Leute an oder mache anderes mit ihnen"
+
+#: ../../mod/poke.php:194
+msgid "Recipient"
+msgstr "Empfänger"
+
+#: ../../mod/poke.php:195
+msgid "Choose what you wish to do to recipient"
+msgstr "Was willst du mit dem Empfänger machen:"
+
+#: ../../mod/poke.php:198
+msgid "Make this post private"
+msgstr "Diesen Beitrag privat machen"
+
 #: ../../mod/match.php:12
 msgid "Profile Match"
 msgstr "Profilübereinstimmungen"
@@ -1207,7 +1269,7 @@ msgid "is interested in:"
 msgstr "ist interessiert an:"
 
 #: ../../mod/match.php:58 ../../mod/suggest.php:59
-#: ../../include/contact_widgets.php:9 ../../boot.php:1053
+#: ../../include/contact_widgets.php:9 ../../boot.php:1152
 msgid "Connect"
 msgstr "Verbinden"
 
@@ -1223,6 +1285,138 @@ msgstr "Entfernte Privatsphäreneinstellungen nicht verfügbar."
 msgid "Visible to:"
 msgstr "Sichtbar für:"
 
+#: ../../mod/content.php:119 ../../mod/network.php:436
+msgid "No such group"
+msgstr "Es gibt keine solche Gruppe"
+
+#: ../../mod/content.php:130 ../../mod/network.php:447
+msgid "Group is empty"
+msgstr "Gruppe ist leer"
+
+#: ../../mod/content.php:134 ../../mod/network.php:451
+msgid "Group: "
+msgstr "Gruppe: "
+
+#: ../../mod/content.php:438 ../../mod/content.php:720
+#: ../../include/conversation.php:408 ../../include/conversation.php:815
+msgid "Select"
+msgstr "Auswählen"
+
+#: ../../mod/content.php:455 ../../mod/content.php:813
+#: ../../mod/content.php:814 ../../include/conversation.php:596
+#: ../../include/conversation.php:597 ../../include/conversation.php:832
+#, php-format
+msgid "View %s's profile @ %s"
+msgstr "Das Profil von %s auf %s betrachten."
+
+#: ../../mod/content.php:465 ../../mod/content.php:825
+#: ../../include/conversation.php:610 ../../include/conversation.php:843
+#, php-format
+msgid "%s from %s"
+msgstr "%s von %s"
+
+#: ../../mod/content.php:480 ../../include/conversation.php:858
+msgid "View in context"
+msgstr "Im Zusammenhang betrachten"
+
+#: ../../mod/content.php:586 ../../include/conversation.php:637
+#, php-format
+msgid "%d comment"
+msgid_plural "%d comments"
+msgstr[0] "%d Kommentar"
+msgstr[1] "%d Kommentare"
+
+#: ../../mod/content.php:587 ../../addon/page/page.php:76
+#: ../../addon/page/page.php:110 ../../addon/showmore/showmore.php:119
+#: ../../include/contact_widgets.php:188 ../../include/conversation.php:638
+#: ../../boot.php:584
+msgid "show more"
+msgstr "mehr anzeigen"
+
+#: ../../mod/content.php:665 ../../include/conversation.php:534
+msgid "like"
+msgstr "mag ich"
+
+#: ../../mod/content.php:666 ../../include/conversation.php:535
+msgid "dislike"
+msgstr "mag ich nicht"
+
+#: ../../mod/content.php:668 ../../include/conversation.php:537
+msgid "Share this"
+msgstr "Weitersagen"
+
+#: ../../mod/content.php:668 ../../include/conversation.php:537
+msgid "share"
+msgstr "Teilen"
+
+#: ../../mod/content.php:692 ../../include/conversation.php:561
+msgid "Bold"
+msgstr "Fett"
+
+#: ../../mod/content.php:693 ../../include/conversation.php:562
+msgid "Italic"
+msgstr "Kursiv"
+
+#: ../../mod/content.php:694 ../../include/conversation.php:563
+msgid "Underline"
+msgstr "Unterstrichen"
+
+#: ../../mod/content.php:695 ../../include/conversation.php:564
+msgid "Quote"
+msgstr "Zitat"
+
+#: ../../mod/content.php:696 ../../include/conversation.php:565
+msgid "Code"
+msgstr "Code"
+
+#: ../../mod/content.php:697 ../../include/conversation.php:566
+msgid "Image"
+msgstr "Bild"
+
+#: ../../mod/content.php:698 ../../include/conversation.php:567
+msgid "Link"
+msgstr "Verweis"
+
+#: ../../mod/content.php:699 ../../include/conversation.php:568
+msgid "Video"
+msgstr "Video"
+
+#: ../../mod/content.php:733 ../../include/conversation.php:498
+msgid "add star"
+msgstr "markieren"
+
+#: ../../mod/content.php:734 ../../include/conversation.php:499
+msgid "remove star"
+msgstr "Markierung entfernen"
+
+#: ../../mod/content.php:735 ../../include/conversation.php:500
+msgid "toggle star status"
+msgstr "Markierung umschalten"
+
+#: ../../mod/content.php:738 ../../include/conversation.php:503
+msgid "starred"
+msgstr "markiert"
+
+#: ../../mod/content.php:739 ../../include/conversation.php:504
+msgid "add tag"
+msgstr "Tag hinzufügen"
+
+#: ../../mod/content.php:743 ../../include/conversation.php:412
+msgid "save to folder"
+msgstr "In Ordner speichern"
+
+#: ../../mod/content.php:815 ../../include/conversation.php:598
+msgid "to"
+msgstr "zu"
+
+#: ../../mod/content.php:816 ../../include/conversation.php:599
+msgid "Wall-to-Wall"
+msgstr "Wall-to-Wall"
+
+#: ../../mod/content.php:817 ../../include/conversation.php:600
+msgid "via Wall-To-Wall:"
+msgstr "via Wall-To-Wall:"
+
 #: ../../mod/home.php:26 ../../addon/communityhome/communityhome.php:179
 #, php-format
 msgid "Welcome to %s"
@@ -1238,8 +1432,8 @@ msgid "Discard"
 msgstr "Verwerfen"
 
 #: ../../mod/notifications.php:51 ../../mod/notifications.php:160
-#: ../../mod/notifications.php:206 ../../mod/contacts.php:316
-#: ../../mod/contacts.php:370
+#: ../../mod/notifications.php:206 ../../mod/contacts.php:314
+#: ../../mod/contacts.php:368
 msgid "Ignore"
 msgstr "Ignorieren"
 
@@ -1264,7 +1458,7 @@ msgstr "Pinnwand"
 msgid "Introductions"
 msgstr "Kontaktanfragen"
 
-#: ../../mod/notifications.php:100 ../../mod/message.php:105
+#: ../../mod/notifications.php:100 ../../mod/message.php:176
 #: ../../include/nav.php:128
 msgid "Messages"
 msgstr "Nachrichten"
@@ -1291,7 +1485,7 @@ msgid "suggested by %s"
 msgstr "vorgeschlagen von %s"
 
 #: ../../mod/notifications.php:153 ../../mod/notifications.php:200
-#: ../../mod/contacts.php:376
+#: ../../mod/contacts.php:374
 msgid "Hide this contact from others"
 msgstr "Verberge diesen Kontakt vor anderen"
 
@@ -1304,7 +1498,7 @@ msgid "if applicable"
 msgstr "falls anwendbar"
 
 #: ../../mod/notifications.php:157 ../../mod/notifications.php:204
-#: ../../mod/admin.php:661
+#: ../../mod/admin.php:681
 msgid "Approve"
 msgstr "Genehmigen"
 
@@ -1413,307 +1607,307 @@ msgstr "Keine weiteren Pinnwand-Benachrichtigungen"
 msgid "Home Notifications"
 msgstr "Pinnwand Benachrichtigungen"
 
-#: ../../mod/contacts.php:83 ../../mod/contacts.php:163
+#: ../../mod/contacts.php:77 ../../mod/contacts.php:157
 msgid "Could not access contact record."
 msgstr "Konnte nicht auf die Kontaktdaten zugreifen."
 
-#: ../../mod/contacts.php:97
+#: ../../mod/contacts.php:91
 msgid "Could not locate selected profile."
 msgstr "Konnte das ausgewählte Profil nicht finden."
 
-#: ../../mod/contacts.php:120
+#: ../../mod/contacts.php:114
 msgid "Contact updated."
 msgstr "Kontakt aktualisiert."
 
-#: ../../mod/contacts.php:185
+#: ../../mod/contacts.php:179
 msgid "Contact has been blocked"
 msgstr "Kontakt wurde blockiert"
 
-#: ../../mod/contacts.php:185
+#: ../../mod/contacts.php:179
 msgid "Contact has been unblocked"
 msgstr "Kontakt wurde wieder freigegeben"
 
-#: ../../mod/contacts.php:199
+#: ../../mod/contacts.php:193
 msgid "Contact has been ignored"
 msgstr "Kontakt wurde ignoriert"
 
-#: ../../mod/contacts.php:199
+#: ../../mod/contacts.php:193
 msgid "Contact has been unignored"
 msgstr "Kontakt wird nicht mehr ignoriert"
 
-#: ../../mod/contacts.php:215
+#: ../../mod/contacts.php:209
 msgid "Contact has been archived"
 msgstr "Kontakt wurde archiviert"
 
-#: ../../mod/contacts.php:215
+#: ../../mod/contacts.php:209
 msgid "Contact has been unarchived"
 msgstr "Kontakt wurde aus dem Archiv geholt"
 
-#: ../../mod/contacts.php:228
+#: ../../mod/contacts.php:222
 msgid "Contact has been removed."
 msgstr "Kontakt wurde entfernt."
 
-#: ../../mod/contacts.php:258
+#: ../../mod/contacts.php:256
 #, php-format
 msgid "You are mutual friends with %s"
 msgstr "Du hast mit %s eine beidseitige Freundschaft"
 
-#: ../../mod/contacts.php:262
+#: ../../mod/contacts.php:260
 #, php-format
 msgid "You are sharing with %s"
 msgstr "Du teilst mit %s"
 
-#: ../../mod/contacts.php:267
+#: ../../mod/contacts.php:265
 #, php-format
 msgid "%s is sharing with you"
 msgstr "%s teilt mit Dir"
 
-#: ../../mod/contacts.php:284
+#: ../../mod/contacts.php:282
 msgid "Private communications are not available for this contact."
 msgstr "Private Kommunikation ist für diesen Kontakt nicht verfügbar."
 
-#: ../../mod/contacts.php:287
+#: ../../mod/contacts.php:285
 msgid "Never"
 msgstr "Niemals"
 
-#: ../../mod/contacts.php:291
+#: ../../mod/contacts.php:289
 msgid "(Update was successful)"
 msgstr "(Aktualisierung war erfolgreich)"
 
-#: ../../mod/contacts.php:291
+#: ../../mod/contacts.php:289
 msgid "(Update was not successful)"
 msgstr "(Aktualisierung war nicht erfolgreich)"
 
-#: ../../mod/contacts.php:293
+#: ../../mod/contacts.php:291
 msgid "Suggest friends"
 msgstr "Kontakte vorschlagen"
 
-#: ../../mod/contacts.php:297
+#: ../../mod/contacts.php:295
 #, php-format
 msgid "Network type: %s"
-msgstr "Netzwerk Typ: %s"
+msgstr "Netzwerktyp: %s"
 
-#: ../../mod/contacts.php:300 ../../include/contact_widgets.php:183
+#: ../../mod/contacts.php:298 ../../include/contact_widgets.php:183
 #, php-format
 msgid "%d contact in common"
 msgid_plural "%d contacts in common"
 msgstr[0] "%d gemeinsamer Kontakt"
 msgstr[1] "%d gemeinsame Kontakte"
 
-#: ../../mod/contacts.php:305
+#: ../../mod/contacts.php:303
 msgid "View all contacts"
 msgstr "Alle Kontakte anzeigen"
 
-#: ../../mod/contacts.php:310 ../../mod/contacts.php:369
-#: ../../mod/admin.php:665
+#: ../../mod/contacts.php:308 ../../mod/contacts.php:367
+#: ../../mod/admin.php:685
 msgid "Unblock"
 msgstr "Entsperren"
 
-#: ../../mod/contacts.php:310 ../../mod/contacts.php:369
-#: ../../mod/admin.php:664
+#: ../../mod/contacts.php:308 ../../mod/contacts.php:367
+#: ../../mod/admin.php:684
 msgid "Block"
 msgstr "Sperren"
 
-#: ../../mod/contacts.php:313
+#: ../../mod/contacts.php:311
 msgid "Toggle Blocked status"
 msgstr "Geblockt-Status ein-/ausschalten"
 
-#: ../../mod/contacts.php:316 ../../mod/contacts.php:370
+#: ../../mod/contacts.php:314 ../../mod/contacts.php:368
 msgid "Unignore"
 msgstr "Ignorieren aufheben"
 
-#: ../../mod/contacts.php:319
+#: ../../mod/contacts.php:317
 msgid "Toggle Ignored status"
 msgstr "Ignoriert-Status ein-/ausschalten"
 
-#: ../../mod/contacts.php:323
+#: ../../mod/contacts.php:321
 msgid "Unarchive"
-msgstr "Unarchivieren"
+msgstr "Aus Archiv zurückholen"
 
-#: ../../mod/contacts.php:323
+#: ../../mod/contacts.php:321
 msgid "Archive"
 msgstr "Archivieren"
 
-#: ../../mod/contacts.php:326
+#: ../../mod/contacts.php:324
 msgid "Toggle Archive status"
 msgstr "Archiviert-Status ein-/ausschalten"
 
-#: ../../mod/contacts.php:329
+#: ../../mod/contacts.php:327
 msgid "Repair"
 msgstr "Reparieren"
 
-#: ../../mod/contacts.php:332
+#: ../../mod/contacts.php:330
 msgid "Advanced Contact Settings"
 msgstr "Fortgeschrittene Kontakteinstellungen"
 
-#: ../../mod/contacts.php:338
+#: ../../mod/contacts.php:336
 msgid "Communications lost with this contact!"
 msgstr "Verbindungen mit diesem Kontakt verloren!"
 
-#: ../../mod/contacts.php:341
+#: ../../mod/contacts.php:339
 msgid "Contact Editor"
 msgstr "Kontakt Editor"
 
-#: ../../mod/contacts.php:344
+#: ../../mod/contacts.php:342
 msgid "Profile Visibility"
 msgstr "Profil-Sichtbarkeit"
 
-#: ../../mod/contacts.php:345
+#: ../../mod/contacts.php:343
 #, php-format
 msgid ""
 "Please choose the profile you would like to display to %s when viewing your "
 "profile securely."
 msgstr "Bitte wähle eines deiner Profile das angezeigt werden soll, wenn %s dein Profil aufruft."
 
-#: ../../mod/contacts.php:346
+#: ../../mod/contacts.php:344
 msgid "Contact Information / Notes"
 msgstr "Kontakt Informationen / Notizen"
 
-#: ../../mod/contacts.php:347
+#: ../../mod/contacts.php:345
 msgid "Edit contact notes"
-msgstr "Notizen zum Kontakt bearbiten"
+msgstr "Notizen zum Kontakt bearbeiten"
 
-#: ../../mod/contacts.php:352 ../../mod/contacts.php:544
+#: ../../mod/contacts.php:350 ../../mod/contacts.php:542
 #: ../../mod/viewcontacts.php:62 ../../mod/nogroup.php:40
 #, php-format
 msgid "Visit %s's profile [%s]"
 msgstr "Besuche %ss Profil [%s]"
 
-#: ../../mod/contacts.php:353
+#: ../../mod/contacts.php:351
 msgid "Block/Unblock contact"
 msgstr "Kontakt blockieren/freischalten"
 
-#: ../../mod/contacts.php:354
+#: ../../mod/contacts.php:352
 msgid "Ignore contact"
 msgstr "Ignoriere den Kontakt"
 
-#: ../../mod/contacts.php:355
+#: ../../mod/contacts.php:353
 msgid "Repair URL settings"
 msgstr "URL Einstellungen reparieren"
 
-#: ../../mod/contacts.php:356
+#: ../../mod/contacts.php:354
 msgid "View conversations"
 msgstr "Unterhaltungen anzeigen"
 
-#: ../../mod/contacts.php:358
+#: ../../mod/contacts.php:356
 msgid "Delete contact"
 msgstr "Lösche den Kontakt"
 
-#: ../../mod/contacts.php:362
+#: ../../mod/contacts.php:360
 msgid "Last update:"
 msgstr "letzte Aktualisierung:"
 
-#: ../../mod/contacts.php:364
+#: ../../mod/contacts.php:362
 msgid "Update public posts"
 msgstr "Öffentliche Beiträge aktualisieren"
 
-#: ../../mod/contacts.php:366 ../../mod/admin.php:1136
+#: ../../mod/contacts.php:364 ../../mod/admin.php:1156
 msgid "Update now"
 msgstr "Jetzt aktualisieren"
 
-#: ../../mod/contacts.php:373
+#: ../../mod/contacts.php:371
 msgid "Currently blocked"
 msgstr "Derzeit geblockt"
 
-#: ../../mod/contacts.php:374
+#: ../../mod/contacts.php:372
 msgid "Currently ignored"
 msgstr "Derzeit ignoriert"
 
-#: ../../mod/contacts.php:375
+#: ../../mod/contacts.php:373
 msgid "Currently archived"
 msgstr "Momentan archiviert"
 
-#: ../../mod/contacts.php:376
+#: ../../mod/contacts.php:374
 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:429
+#: ../../mod/contacts.php:427
 msgid "Suggestions"
 msgstr "Kontaktvorschläge"
 
-#: ../../mod/contacts.php:432
+#: ../../mod/contacts.php:430
 msgid "Suggest potential friends"
 msgstr "Freunde vorschlagen"
 
-#: ../../mod/contacts.php:435 ../../mod/group.php:191
+#: ../../mod/contacts.php:433 ../../mod/group.php:191
 msgid "All Contacts"
 msgstr "Alle Kontakte"
 
-#: ../../mod/contacts.php:438
+#: ../../mod/contacts.php:436
 msgid "Show all contacts"
 msgstr "Alle Kontakte anzeigen"
 
-#: ../../mod/contacts.php:441
+#: ../../mod/contacts.php:439
 msgid "Unblocked"
 msgstr "Ungeblockt"
 
-#: ../../mod/contacts.php:444
+#: ../../mod/contacts.php:442
 msgid "Only show unblocked contacts"
 msgstr "Nur nicht-blockierte Kontakte anzeigen"
 
-#: ../../mod/contacts.php:448
+#: ../../mod/contacts.php:446
 msgid "Blocked"
 msgstr "Geblockt"
 
-#: ../../mod/contacts.php:451
+#: ../../mod/contacts.php:449
 msgid "Only show blocked contacts"
 msgstr "Nur blockierte Kontakte anzeigen"
 
-#: ../../mod/contacts.php:455
+#: ../../mod/contacts.php:453
 msgid "Ignored"
 msgstr "Ignoriert"
 
-#: ../../mod/contacts.php:458
+#: ../../mod/contacts.php:456
 msgid "Only show ignored contacts"
 msgstr "Nur ignorierte Kontakte anzeigen"
 
-#: ../../mod/contacts.php:462
+#: ../../mod/contacts.php:460
 msgid "Archived"
 msgstr "Archiviert"
 
-#: ../../mod/contacts.php:465
+#: ../../mod/contacts.php:463
 msgid "Only show archived contacts"
 msgstr "Nur archivierte Kontakte anzeigen"
 
-#: ../../mod/contacts.php:469
+#: ../../mod/contacts.php:467
 msgid "Hidden"
 msgstr "Verborgen"
 
-#: ../../mod/contacts.php:472
+#: ../../mod/contacts.php:470
 msgid "Only show hidden contacts"
 msgstr "Nur verborgene Kontakte anzeigen"
 
-#: ../../mod/contacts.php:520
+#: ../../mod/contacts.php:518
 msgid "Mutual Friendship"
 msgstr "Beidseitige Freundschaft"
 
-#: ../../mod/contacts.php:524
+#: ../../mod/contacts.php:522
 msgid "is a fan of yours"
 msgstr "ist ein Fan von dir"
 
-#: ../../mod/contacts.php:528
+#: ../../mod/contacts.php:526
 msgid "you are a fan of"
 msgstr "du bist Fan von"
 
-#: ../../mod/contacts.php:545 ../../mod/nogroup.php:41
+#: ../../mod/contacts.php:543 ../../mod/nogroup.php:41
 msgid "Edit contact"
 msgstr "Kontakt bearbeiten"
 
-#: ../../mod/contacts.php:566 ../../view/theme/diabook/theme.php:129
+#: ../../mod/contacts.php:564 ../../view/theme/diabook/theme.php:129
 #: ../../include/nav.php:139
 msgid "Contacts"
 msgstr "Kontakte"
 
-#: ../../mod/contacts.php:570
+#: ../../mod/contacts.php:568
 msgid "Search your contacts"
 msgstr "Suche in deinen Kontakten"
 
-#: ../../mod/contacts.php:571 ../../mod/directory.php:57
+#: ../../mod/contacts.php:569 ../../mod/directory.php:57
 msgid "Finding: "
 msgstr "Funde: "
 
-#: ../../mod/contacts.php:572 ../../mod/directory.php:59
+#: ../../mod/contacts.php:570 ../../mod/directory.php:59
 #: ../../include/contact_widgets.php:33
 msgid "Find"
 msgstr "Finde"
@@ -1734,11 +1928,11 @@ msgstr "Anfrage zum Zurücksetzen des Passworts auf %s erhalten"
 #: ../../mod/lostpass.php:45 ../../mod/lostpass.php:107
 #: ../../mod/register.php:90 ../../mod/register.php:144
 #: ../../mod/regmod.php:54 ../../mod/dfrn_confirm.php:752
-#: ../../addon/facebook/facebook.php:692
-#: ../../addon/facebook/facebook.php:1182
+#: ../../addon/facebook/facebook.php:702
+#: ../../addon/facebook/facebook.php:1200
 #: ../../addon/public_server/public_server.php:62
-#: ../../addon/testdrive/testdrive.php:67 ../../include/items.php:2792
-#: ../../boot.php:703
+#: ../../addon/testdrive/testdrive.php:67 ../../include/items.php:3219
+#: ../../boot.php:797
 msgid "Administrator"
 msgstr "Administrator"
 
@@ -1748,7 +1942,7 @@ msgid ""
 "Password reset failed."
 msgstr "Anfrage konnte nicht verifiziert werden. (Eventuell hast du bereits eine Ã¤hnliche Anfrage gestellt.) Zurücksetzen des Passworts gescheitert."
 
-#: ../../mod/lostpass.php:83 ../../boot.php:835
+#: ../../mod/lostpass.php:83 ../../boot.php:934
 msgid "Password Reset"
 msgstr "Passwort zurücksetzen"
 
@@ -1782,535 +1976,540 @@ msgstr "Hast du dein Passwort vergessen?"
 msgid ""
 "Enter your email address and submit to have your password reset. Then check "
 "your email for further instructions."
-msgstr "Gib deine Email-Adresse an und fordere ein neues Passwort an. Es werden dir dann weitere Informationen per Mail zugesendet."
+msgstr "Gib deine E-Mail-Adresse an und fordere ein neues Passwort an. Es werden dir dann weitere Informationen per Mail zugesendet."
 
 #: ../../mod/lostpass.php:121
 msgid "Nickname or Email: "
-msgstr "Spitzname oder Email:"
+msgstr "Spitzname oder E-Mail:"
 
 #: ../../mod/lostpass.php:122
 msgid "Reset"
 msgstr "Zurücksetzen"
 
-#: ../../mod/settings.php:50 ../../include/nav.php:137
+#: ../../mod/settings.php:30 ../../include/nav.php:137
 msgid "Account settings"
 msgstr "Kontoeinstellungen"
 
-#: ../../mod/settings.php:55
+#: ../../mod/settings.php:35
 msgid "Display settings"
 msgstr "Anzeige-Einstellungen"
 
-#: ../../mod/settings.php:61
+#: ../../mod/settings.php:41
 msgid "Connector settings"
 msgstr "Connector-Einstellungen"
 
-#: ../../mod/settings.php:66
+#: ../../mod/settings.php:46
 msgid "Plugin settings"
 msgstr "Plugin-Einstellungen"
 
-#: ../../mod/settings.php:71
+#: ../../mod/settings.php:51
 msgid "Connected apps"
 msgstr "Verbundene Programme"
 
-#: ../../mod/settings.php:76
+#: ../../mod/settings.php:56
 msgid "Export personal data"
 msgstr "Persönliche Daten exportieren"
 
-#: ../../mod/settings.php:81
+#: ../../mod/settings.php:61
 msgid "Remove account"
 msgstr "Konto löschen"
 
-#: ../../mod/settings.php:89 ../../mod/admin.php:751 ../../mod/admin.php:956
-#: ../../addon/dav/layout.fnk.php:116 ../../addon/mathjax/mathjax.php:36
-#: ../../view/theme/diabook/theme.php:643
+#: ../../mod/settings.php:69 ../../mod/admin.php:771 ../../mod/admin.php:976
+#: ../../addon/dav/friendica/layout.fnk.php:225
+#: ../../addon/mathjax/mathjax.php:36 ../../view/theme/diabook/theme.php:643
 #: ../../view/theme/diabook/theme.php:773 ../../include/nav.php:137
 msgid "Settings"
 msgstr "Einstellungen"
 
-#: ../../mod/settings.php:133
+#: ../../mod/settings.php:113
 msgid "Missing some important data!"
 msgstr "Wichtige Daten fehlen!"
 
-#: ../../mod/settings.php:136 ../../mod/settings.php:581
+#: ../../mod/settings.php:116 ../../mod/settings.php:563
 msgid "Update"
 msgstr "Aktualisierungen"
 
-#: ../../mod/settings.php:241
+#: ../../mod/settings.php:221
 msgid "Failed to connect with email account using the settings provided."
 msgstr "Verbindung zum E-Mail-Konto mit den angegebenen Einstellungen nicht möglich."
 
-#: ../../mod/settings.php:246
+#: ../../mod/settings.php:226
 msgid "Email settings updated."
-msgstr "EMail Einstellungen bearbeitet."
+msgstr "E-Mail Einstellungen bearbeitet."
 
-#: ../../mod/settings.php:305
+#: ../../mod/settings.php:285
 msgid "Passwords do not match. Password unchanged."
 msgstr "Die Passwörter stimmen nicht Ã¼berein. Das Passwort bleibt unverändert."
 
-#: ../../mod/settings.php:310
+#: ../../mod/settings.php:290
 msgid "Empty passwords are not allowed. Password unchanged."
 msgstr "Leere Passwörter sind nicht erlaubt. Passwort bleibt unverändert."
 
-#: ../../mod/settings.php:321
+#: ../../mod/settings.php:301
 msgid "Password changed."
 msgstr "Passwort Ã¤ndern."
 
-#: ../../mod/settings.php:323
+#: ../../mod/settings.php:303
 msgid "Password update failed. Please try again."
 msgstr "Aktualisierung des Passworts gescheitert, bitte versuche es noch einmal."
 
-#: ../../mod/settings.php:386
+#: ../../mod/settings.php:368
 msgid " Please use a shorter name."
 msgstr " Bitte verwende einen kürzeren Namen."
 
-#: ../../mod/settings.php:388
+#: ../../mod/settings.php:370
 msgid " Name too short."
 msgstr " Name ist zu kurz."
 
-#: ../../mod/settings.php:394
+#: ../../mod/settings.php:376
 msgid " Not valid email."
 msgstr " Keine gültige E-Mail."
 
-#: ../../mod/settings.php:396
+#: ../../mod/settings.php:378
 msgid " Cannot change to that email."
 msgstr "Ändern der E-Mail nicht möglich. "
 
-#: ../../mod/settings.php:450
+#: ../../mod/settings.php:432
 msgid "Private forum has no privacy permissions. Using default privacy group."
 msgstr "Für das private Forum sind keine Zugriffsrechte eingestellt. Die voreingestellte Gruppe für neue Kontakte wird benutzt."
 
-#: ../../mod/settings.php:454
+#: ../../mod/settings.php:436
 msgid "Private forum has no privacy permissions and no default privacy group."
 msgstr "Für das private Forum sind keine Zugriffsrechte eingestellt, und es gibt keine voreingestellte Gruppe für neue Kontakte."
 
-#: ../../mod/settings.php:484 ../../addon/facebook/facebook.php:492
+#: ../../mod/settings.php:466 ../../addon/facebook/facebook.php:495
 #: ../../addon/impressum/impressum.php:77
 #: ../../addon/openstreetmap/openstreetmap.php:80
 #: ../../addon/mathjax/mathjax.php:66 ../../addon/piwik/piwik.php:105
-#: ../../addon/twitter/twitter.php:376
+#: ../../addon/twitter/twitter.php:389
 msgid "Settings updated."
 msgstr "Einstellungen aktualisiert."
 
-#: ../../mod/settings.php:554 ../../mod/settings.php:580
-#: ../../mod/settings.php:616
+#: ../../mod/settings.php:536 ../../mod/settings.php:562
+#: ../../mod/settings.php:598
 msgid "Add application"
 msgstr "Programm hinzufügen"
 
-#: ../../mod/settings.php:558 ../../mod/settings.php:584
-#: ../../addon/statusnet/statusnet.php:555
+#: ../../mod/settings.php:540 ../../mod/settings.php:566
+#: ../../addon/statusnet/statusnet.php:570
 msgid "Consumer Key"
 msgstr "Consumer Key"
 
-#: ../../mod/settings.php:559 ../../mod/settings.php:585
-#: ../../addon/statusnet/statusnet.php:554
+#: ../../mod/settings.php:541 ../../mod/settings.php:567
+#: ../../addon/statusnet/statusnet.php:569
 msgid "Consumer Secret"
 msgstr "Consumer Secret"
 
-#: ../../mod/settings.php:560 ../../mod/settings.php:586
+#: ../../mod/settings.php:542 ../../mod/settings.php:568
 msgid "Redirect"
 msgstr "Umleiten"
 
-#: ../../mod/settings.php:561 ../../mod/settings.php:587
+#: ../../mod/settings.php:543 ../../mod/settings.php:569
 msgid "Icon url"
 msgstr "Icon URL"
 
-#: ../../mod/settings.php:572
+#: ../../mod/settings.php:554
 msgid "You can't edit this application."
 msgstr "Du kannst dieses Programm nicht bearbeiten."
 
-#: ../../mod/settings.php:615
+#: ../../mod/settings.php:597
 msgid "Connected Apps"
 msgstr "Verbundene Programme"
 
-#: ../../mod/settings.php:619
+#: ../../mod/settings.php:601
 msgid "Client key starts with"
 msgstr "Anwenderschlüssel beginnt mit"
 
-#: ../../mod/settings.php:620
+#: ../../mod/settings.php:602
 msgid "No name"
 msgstr "Kein Name"
 
-#: ../../mod/settings.php:621
+#: ../../mod/settings.php:603
 msgid "Remove authorization"
 msgstr "Autorisierung entziehen"
 
-#: ../../mod/settings.php:632
+#: ../../mod/settings.php:614
 msgid "No Plugin settings configured"
 msgstr "Keine Plugin-Einstellungen konfiguriert"
 
-#: ../../mod/settings.php:640 ../../addon/widgets/widgets.php:123
+#: ../../mod/settings.php:622 ../../addon/widgets/widgets.php:123
 msgid "Plugin Settings"
 msgstr "Plugin-Einstellungen"
 
-#: ../../mod/settings.php:652 ../../mod/settings.php:653
+#: ../../mod/settings.php:634 ../../mod/settings.php:635
 #, php-format
 msgid "Built-in support for %s connectivity is %s"
 msgstr "Eingebaute Unterstützung für Verbindungen zu %s ist %s"
 
-#: ../../mod/settings.php:652 ../../mod/settings.php:653
+#: ../../mod/settings.php:634 ../../mod/settings.php:635
 msgid "enabled"
 msgstr "eingeschaltet"
 
-#: ../../mod/settings.php:652 ../../mod/settings.php:653
+#: ../../mod/settings.php:634 ../../mod/settings.php:635
 msgid "disabled"
 msgstr "ausgeschaltet"
 
-#: ../../mod/settings.php:653
+#: ../../mod/settings.php:635
 msgid "StatusNet"
 msgstr "StatusNet"
 
-#: ../../mod/settings.php:683
+#: ../../mod/settings.php:667
+msgid "Email access is disabled on this site."
+msgstr "Zugriff auf E-Mails für diese Seite deaktiviert."
+
+#: ../../mod/settings.php:673
 msgid "Connector Settings"
 msgstr "Verbindungs-Einstellungen"
 
-#: ../../mod/settings.php:688
+#: ../../mod/settings.php:678
 msgid "Email/Mailbox Setup"
 msgstr "E-Mail/Postfach-Einstellungen"
 
-#: ../../mod/settings.php:689
+#: ../../mod/settings.php:679
 msgid ""
 "If you wish to communicate with email contacts using this service "
 "(optional), please specify how to connect to your mailbox."
 msgstr "Wenn du mit E-Mail-Kontakten Ã¼ber diesen Service kommunizieren möchtest (optional), gib bitte die Einstellungen für dein Postfach an."
 
-#: ../../mod/settings.php:690
+#: ../../mod/settings.php:680
 msgid "Last successful email check:"
-msgstr "Letzter erfolgreicher Email Check"
-
-#: ../../mod/settings.php:691
-msgid "Email access is disabled on this site."
-msgstr "Zugriff auf E-Mails für diese Seite deaktiviert."
+msgstr "Letzter erfolgreicher E-Mail Check"
 
-#: ../../mod/settings.php:692
+#: ../../mod/settings.php:682
 msgid "IMAP server name:"
 msgstr "IMAP-Server-Name:"
 
-#: ../../mod/settings.php:693
+#: ../../mod/settings.php:683
 msgid "IMAP port:"
 msgstr "IMAP-Port:"
 
-#: ../../mod/settings.php:694
+#: ../../mod/settings.php:684
 msgid "Security:"
 msgstr "Sicherheit:"
 
-#: ../../mod/settings.php:694 ../../mod/settings.php:699
+#: ../../mod/settings.php:684 ../../mod/settings.php:689
+#: ../../addon/dav/common/wdcal_edit.inc.php:191
 msgid "None"
 msgstr "Keine"
 
-#: ../../mod/settings.php:695
+#: ../../mod/settings.php:685
 msgid "Email login name:"
 msgstr "E-Mail-Login-Name:"
 
-#: ../../mod/settings.php:696
+#: ../../mod/settings.php:686
 msgid "Email password:"
 msgstr "E-Mail-Passwort:"
 
-#: ../../mod/settings.php:697
+#: ../../mod/settings.php:687
 msgid "Reply-to address:"
 msgstr "Reply-to Adresse:"
 
-#: ../../mod/settings.php:698
+#: ../../mod/settings.php:688
 msgid "Send public posts to all email contacts:"
 msgstr "Sende Ã¶ffentliche Beiträge an alle E-Mail-Kontakte:"
 
-#: ../../mod/settings.php:699
+#: ../../mod/settings.php:689
 msgid "Action after import:"
 msgstr "Aktion nach Import:"
 
-#: ../../mod/settings.php:699
+#: ../../mod/settings.php:689
 msgid "Mark as seen"
 msgstr "Als gelesen markieren"
 
-#: ../../mod/settings.php:699
+#: ../../mod/settings.php:689
 msgid "Move to folder"
 msgstr "In einen Ordner verschieben"
 
-#: ../../mod/settings.php:700
+#: ../../mod/settings.php:690
 msgid "Move to folder:"
 msgstr "In diesen Ordner verschieben:"
 
-#: ../../mod/settings.php:760
+#: ../../mod/settings.php:750
 msgid "Display Settings"
 msgstr "Anzeige-Einstellungen"
 
-#: ../../mod/settings.php:766
+#: ../../mod/settings.php:756 ../../mod/settings.php:766
 msgid "Display Theme:"
 msgstr "Theme:"
 
-#: ../../mod/settings.php:767
+#: ../../mod/settings.php:757
 msgid "Update browser every xx seconds"
 msgstr "Browser alle xx Sekunden aktualisieren"
 
-#: ../../mod/settings.php:767
+#: ../../mod/settings.php:757
 msgid "Minimum of 10 seconds, no maximum"
 msgstr "Minimal 10 Sekunden, kein Maximum"
 
-#: ../../mod/settings.php:768
+#: ../../mod/settings.php:758
 msgid "Number of items to display on the network page:"
 msgstr "Zahl der Beiträge, die pro Netzwerkseite angezeigt werden sollen: "
 
-#: ../../mod/settings.php:768
+#: ../../mod/settings.php:758
 msgid "Maximum of 100 items"
 msgstr "Maximal 100 Beiträge"
 
-#: ../../mod/settings.php:769
+#: ../../mod/settings.php:759
 msgid "Don't show emoticons"
 msgstr "Keine Smilies anzeigen"
 
-#: ../../mod/settings.php:840
+#: ../../mod/settings.php:835
 msgid "Normal Account Page"
 msgstr "Normales Konto"
 
-#: ../../mod/settings.php:841
+#: ../../mod/settings.php:836
 msgid "This account is a normal personal profile"
 msgstr "Dieses Konto ist ein normales persönliches Profil"
 
-#: ../../mod/settings.php:844
+#: ../../mod/settings.php:839
 msgid "Soapbox Page"
 msgstr "Marktschreier-Konto"
 
-#: ../../mod/settings.php:845
+#: ../../mod/settings.php:840
 msgid "Automatically approve all connection/friend requests as read-only fans"
 msgstr "Kontaktanfragen werden automatisch als Nurlese-Fans akzeptiert"
 
-#: ../../mod/settings.php:848
+#: ../../mod/settings.php:843
 msgid "Community Forum/Celebrity Account"
 msgstr "Forum/Promi-Konto"
 
-#: ../../mod/settings.php:849
+#: ../../mod/settings.php:844
 msgid ""
 "Automatically approve all connection/friend requests as read-write fans"
 msgstr "Kontaktanfragen werden automatisch als Lese-und-Schreib-Fans akzeptiert"
 
-#: ../../mod/settings.php:852
+#: ../../mod/settings.php:847
 msgid "Automatic Friend Page"
 msgstr "Automatische Freunde Seite"
 
-#: ../../mod/settings.php:853
+#: ../../mod/settings.php:848
 msgid "Automatically approve all connection/friend requests as friends"
 msgstr "Kontaktanfragen werden automatisch als Freund akzeptiert"
 
-#: ../../mod/settings.php:856
+#: ../../mod/settings.php:851
 msgid "Private Forum [Experimental]"
 msgstr "Privates Forum [Versuchsstadium]"
 
-#: ../../mod/settings.php:857
+#: ../../mod/settings.php:852
 msgid "Private forum - approved members only"
 msgstr "Privates Forum, nur für Mitglieder"
 
-#: ../../mod/settings.php:869
+#: ../../mod/settings.php:864
 msgid "OpenID:"
 msgstr "OpenID:"
 
-#: ../../mod/settings.php:869
+#: ../../mod/settings.php:864
 msgid "(Optional) Allow this OpenID to login to this account."
 msgstr "(Optional) Erlaube die Anmeldung für dieses Konto mit dieser OpenID."
 
-#: ../../mod/settings.php:879
+#: ../../mod/settings.php:874
 msgid "Publish your default profile in your local site directory?"
 msgstr "Darf dein Standardprofil im Verzeichnis dieses Servers veröffentlicht werden?"
 
-#: ../../mod/settings.php:885
+#: ../../mod/settings.php:880
 msgid "Publish your default profile in the global social directory?"
 msgstr "Darf dein Standardprofil im weltweiten Verzeichnis veröffentlicht werden?"
 
-#: ../../mod/settings.php:893
+#: ../../mod/settings.php:888
 msgid "Hide your contact/friend list from viewers of your default profile?"
 msgstr "Liste der Kontakte vor Betrachtern des Standardprofils verbergen?"
 
-#: ../../mod/settings.php:897
+#: ../../mod/settings.php:892
 msgid "Hide your profile details from unknown viewers?"
 msgstr "Profil-Details vor unbekannten Betrachtern verbergen?"
 
-#: ../../mod/settings.php:902
+#: ../../mod/settings.php:897
 msgid "Allow friends to post to your profile page?"
 msgstr "Dürfen deine Kontakte auf deine Pinnwand schreiben?"
 
-#: ../../mod/settings.php:908
+#: ../../mod/settings.php:903
 msgid "Allow friends to tag your posts?"
 msgstr "Dürfen deine Kontakte deine Beiträge mit Schlagwörtern versehen?"
 
-#: ../../mod/settings.php:914
+#: ../../mod/settings.php:909
 msgid "Allow us to suggest you as a potential friend to new members?"
 msgstr "Dürfen wir dich neuen Mitgliedern als potentiellen Kontakt vorschlagen?"
 
-#: ../../mod/settings.php:920
+#: ../../mod/settings.php:915
 msgid "Permit unknown people to send you private mail?"
 msgstr "Dürfen dir Unbekannte private Nachrichten schicken?"
 
-#: ../../mod/settings.php:931
+#: ../../mod/settings.php:923
 msgid "Profile is <strong>not published</strong>."
 msgstr "Profil ist <strong>nicht veröffentlicht</strong>."
 
-#: ../../mod/settings.php:937 ../../mod/profile_photo.php:213
+#: ../../mod/settings.php:926 ../../mod/profile_photo.php:214
 msgid "or"
 msgstr "oder"
 
-#: ../../mod/settings.php:942
+#: ../../mod/settings.php:931
 msgid "Your Identity Address is"
 msgstr "Die Adresse deines Profils lautet:"
 
-#: ../../mod/settings.php:953
+#: ../../mod/settings.php:942
 msgid "Automatically expire posts after this many days:"
 msgstr "Beiträge verfallen automatisch nach dieser Anzahl von Tagen:"
 
-#: ../../mod/settings.php:953
+#: ../../mod/settings.php:942
 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:954
+#: ../../mod/settings.php:943
 msgid "Advanced expiration settings"
 msgstr "Erweiterte Verfallseinstellungen"
 
-#: ../../mod/settings.php:955
+#: ../../mod/settings.php:944
 msgid "Advanced Expiration"
 msgstr "Erweitertes Verfallen"
 
-#: ../../mod/settings.php:956
+#: ../../mod/settings.php:945
 msgid "Expire posts:"
 msgstr "Beiträge verfallen lassen:"
 
-#: ../../mod/settings.php:957
+#: ../../mod/settings.php:946
 msgid "Expire personal notes:"
 msgstr "Persönliche Notizen verfallen lassen:"
 
-#: ../../mod/settings.php:958
+#: ../../mod/settings.php:947
 msgid "Expire starred posts:"
 msgstr "Markierte Beiträge verfallen lassen:"
 
-#: ../../mod/settings.php:959
+#: ../../mod/settings.php:948
 msgid "Expire photos:"
 msgstr "Fotos verfallen lassen:"
 
-#: ../../mod/settings.php:960
+#: ../../mod/settings.php:949
 msgid "Only expire posts by others:"
 msgstr "Nur Beiträge anderer verfallen:"
 
-#: ../../mod/settings.php:967
+#: ../../mod/settings.php:956
 msgid "Account Settings"
 msgstr "Kontoeinstellungen"
 
-#: ../../mod/settings.php:975
+#: ../../mod/settings.php:964
 msgid "Password Settings"
 msgstr "Passwort-Einstellungen"
 
-#: ../../mod/settings.php:976
+#: ../../mod/settings.php:965
 msgid "New Password:"
 msgstr "Neues Passwort:"
 
-#: ../../mod/settings.php:977
+#: ../../mod/settings.php:966
 msgid "Confirm:"
 msgstr "Bestätigen:"
 
-#: ../../mod/settings.php:977
+#: ../../mod/settings.php:966
 msgid "Leave password fields blank unless changing"
 msgstr "Lass die Passwort-Felder leer, außer du willst das Passwort Ã¤ndern"
 
-#: ../../mod/settings.php:981
+#: ../../mod/settings.php:970
 msgid "Basic Settings"
 msgstr "Grundeinstellungen"
 
-#: ../../mod/settings.php:982 ../../include/profile_advanced.php:15
+#: ../../mod/settings.php:971 ../../include/profile_advanced.php:15
 msgid "Full Name:"
 msgstr "Kompletter Name:"
 
-#: ../../mod/settings.php:983
+#: ../../mod/settings.php:972
 msgid "Email Address:"
 msgstr "E-Mail-Adresse:"
 
-#: ../../mod/settings.php:984
+#: ../../mod/settings.php:973
 msgid "Your Timezone:"
 msgstr "Deine Zeitzone:"
 
-#: ../../mod/settings.php:985
+#: ../../mod/settings.php:974
 msgid "Default Post Location:"
 msgstr "Standardstandort:"
 
-#: ../../mod/settings.php:986
+#: ../../mod/settings.php:975
 msgid "Use Browser Location:"
 msgstr "Standort des Browsers verwenden:"
 
-#: ../../mod/settings.php:989
+#: ../../mod/settings.php:978
 msgid "Security and Privacy Settings"
 msgstr "Sicherheits- und Privatsphäre-Einstellungen"
 
-#: ../../mod/settings.php:991
+#: ../../mod/settings.php:980
 msgid "Maximum Friend Requests/Day:"
 msgstr "Maximale Anzahl von Freundschaftsanfragen/Tag:"
 
-#: ../../mod/settings.php:991 ../../mod/settings.php:1010
+#: ../../mod/settings.php:980 ../../mod/settings.php:999
 msgid "(to prevent spam abuse)"
 msgstr "(um SPAM zu vermeiden)"
 
-#: ../../mod/settings.php:992
+#: ../../mod/settings.php:981
 msgid "Default Post Permissions"
 msgstr "Standard-Zugriffsrechte für Beiträge"
 
-#: ../../mod/settings.php:993
+#: ../../mod/settings.php:982
 msgid "(click to open/close)"
 msgstr "(klicke zum Ã¶ffnen/schließen)"
 
-#: ../../mod/settings.php:1010
+#: ../../mod/settings.php:999
 msgid "Maximum private messages per day from unknown people:"
 msgstr "Maximale Anzahl privater Nachrichten von Unbekannten pro Tag:"
 
-#: ../../mod/settings.php:1013
+#: ../../mod/settings.php:1002
 msgid "Notification Settings"
 msgstr "Benachrichtigungseinstellungen"
 
-#: ../../mod/settings.php:1014
+#: ../../mod/settings.php:1003
 msgid "By default post a status message when:"
 msgstr "Standardmäßig eine Statusnachricht posten, wenn:"
 
-#: ../../mod/settings.php:1015
+#: ../../mod/settings.php:1004
 msgid "accepting a friend request"
 msgstr "– du eine Kontaktanfrage akzeptierst"
 
-#: ../../mod/settings.php:1016
+#: ../../mod/settings.php:1005
 msgid "joining a forum/community"
 msgstr "– du einem Forum/einer Gemeinschaftsseite beitrittst"
 
-#: ../../mod/settings.php:1017
+#: ../../mod/settings.php:1006
 msgid "making an <em>interesting</em> profile change"
 msgstr "– du eine <em>interessante</em> Ã„nderung an deinem Profil durchführst"
 
-#: ../../mod/settings.php:1018
+#: ../../mod/settings.php:1007
 msgid "Send a notification email when:"
 msgstr "Benachrichtigungs-E-Mail senden wenn:"
 
-#: ../../mod/settings.php:1019
+#: ../../mod/settings.php:1008
 msgid "You receive an introduction"
 msgstr "– du eine Kontaktanfrage erhältst"
 
-#: ../../mod/settings.php:1020
+#: ../../mod/settings.php:1009
 msgid "Your introductions are confirmed"
 msgstr "– eine deiner Kontaktanfragen akzeptiert wurde"
 
-#: ../../mod/settings.php:1021
+#: ../../mod/settings.php:1010
 msgid "Someone writes on your profile wall"
 msgstr "– jemand etwas auf deine Pinnwand schreibt"
 
-#: ../../mod/settings.php:1022
+#: ../../mod/settings.php:1011
 msgid "Someone writes a followup comment"
 msgstr "– jemand auch einen Kommentar verfasst"
 
-#: ../../mod/settings.php:1023
+#: ../../mod/settings.php:1012
 msgid "You receive a private message"
 msgstr "– du eine private Nachricht erhältst"
 
-#: ../../mod/settings.php:1024
+#: ../../mod/settings.php:1013
 msgid "You receive a friend suggestion"
 msgstr "– du eine Empfehlung erhältst"
 
-#: ../../mod/settings.php:1025
+#: ../../mod/settings.php:1014
 msgid "You are tagged in a post"
 msgstr "– du in einem Beitrag erwähnt wirst"
 
-#: ../../mod/settings.php:1028
+#: ../../mod/settings.php:1015
+msgid "You are poked/prodded/etc. in a post"
+msgstr "– du von jemandem angestupst oder sonstwie behandelt wirst"
+
+#: ../../mod/settings.php:1018
 msgid "Advanced Account/Page Type Settings"
 msgstr "Erweiterte Konto-/Seitentyp-Einstellungen"
 
-#: ../../mod/settings.php:1029
+#: ../../mod/settings.php:1019
 msgid "Change the behaviour of this account for special situations"
 msgstr "Verhalten dieses Kontos in bestimmten Situationen:"
 
@@ -2362,7 +2561,7 @@ msgstr "Nach Beitragsdatum sortieren"
 
 #: ../../mod/network.php:303
 msgid "Posts that mention or involve you"
-msgstr "Beiträge, in denen es um Dich geht"
+msgstr "Beiträge, in denen es um dich geht"
 
 #: ../../mod/network.php:306
 msgid "New"
@@ -2400,18 +2599,6 @@ 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:436
-msgid "No such group"
-msgstr "Es gibt keine solche Gruppe"
-
-#: ../../mod/network.php:447
-msgid "Group is empty"
-msgstr "Gruppe ist leer"
-
-#: ../../mod/network.php:451
-msgid "Group: "
-msgstr "Gruppe: "
-
 #: ../../mod/network.php:461
 msgid "Contact: "
 msgstr "Kontakt: "
@@ -2424,14 +2611,15 @@ msgstr "Private Nachrichten an diese Person könnten an die Ã–ffentlichkeit gela
 msgid "Invalid contact."
 msgstr "Ungültiger Kontakt."
 
-#: ../../mod/notes.php:44 ../../boot.php:1535
+#: ../../mod/notes.php:44 ../../boot.php:1666
 msgid "Personal Notes"
 msgstr "Persönliche Notizen"
 
 #: ../../mod/notes.php:63 ../../mod/filer.php:30
-#: ../../addon/facebook/facebook.php:760
-#: ../../addon/privacy_image_cache/privacy_image_cache.php:185
-#: ../../addon/dav/layout.fnk.php:384 ../../include/text.php:652
+#: ../../addon/facebook/facebook.php:770
+#: ../../addon/privacy_image_cache/privacy_image_cache.php:263
+#: ../../addon/dav/friendica/layout.fnk.php:441
+#: ../../addon/dav/friendica/layout.fnk.php:488 ../../include/text.php:681
 msgid "Save"
 msgstr "Speichern"
 
@@ -2440,7 +2628,7 @@ msgstr "Speichern"
 msgid "Number of daily wall messages for %s exceeded. Message failed."
 msgstr "Maximale Anzahl der täglichen Pinnwand Nachrichten für %s ist Ã¼berschritten. Zustellung fehlgeschlagen."
 
-#: ../../mod/wallmessage.php:56 ../../mod/message.php:66
+#: ../../mod/wallmessage.php:56 ../../mod/message.php:59
 msgid "No recipient selected."
 msgstr "Kein Empfänger gewählt."
 
@@ -2448,15 +2636,15 @@ msgstr "Kein Empfänger gewählt."
 msgid "Unable to check your home location."
 msgstr "Konnte deinen Heimatort nicht bestimmen."
 
-#: ../../mod/wallmessage.php:62 ../../mod/message.php:73
+#: ../../mod/wallmessage.php:62 ../../mod/message.php:66
 msgid "Message could not be sent."
 msgstr "Nachricht konnte nicht gesendet werden."
 
-#: ../../mod/wallmessage.php:65 ../../mod/message.php:76
+#: ../../mod/wallmessage.php:65 ../../mod/message.php:69
 msgid "Message collection failure."
 msgstr "Konnte Nachrichten nicht abrufen."
 
-#: ../../mod/wallmessage.php:68 ../../mod/message.php:79
+#: ../../mod/wallmessage.php:68 ../../mod/message.php:72
 msgid "Message sent."
 msgstr "Nachricht gesendet."
 
@@ -2464,34 +2652,35 @@ msgstr "Nachricht gesendet."
 msgid "No recipient."
 msgstr "Kein Empfänger."
 
-#: ../../mod/wallmessage.php:124 ../../mod/message.php:172
-#: ../../include/conversation.php:943
+#: ../../mod/wallmessage.php:123 ../../mod/wallmessage.php:131
+#: ../../mod/message.php:242 ../../mod/message.php:250
+#: ../../include/conversation.php:1101 ../../include/conversation.php:1118
 msgid "Please enter a link URL:"
 msgstr "Bitte gib die URL des Links ein:"
 
-#: ../../mod/wallmessage.php:131 ../../mod/message.php:200
+#: ../../mod/wallmessage.php:138 ../../mod/message.php:278
 msgid "Send Private Message"
 msgstr "Private Nachricht senden"
 
-#: ../../mod/wallmessage.php:132
+#: ../../mod/wallmessage.php:139
 #, php-format
 msgid ""
 "If you wish for %s to respond, please check that the privacy settings on "
 "your site allow private mail from unknown senders."
 msgstr "Wenn du möchtest, dass %s dir antworten kann, Ã¼berprüfe deine Privatsphären-Einstellungen und erlaube private Nachrichten von unbekannten Absendern."
 
-#: ../../mod/wallmessage.php:133 ../../mod/message.php:201
-#: ../../mod/message.php:399
+#: ../../mod/wallmessage.php:140 ../../mod/message.php:279
+#: ../../mod/message.php:467
 msgid "To:"
 msgstr "An:"
 
-#: ../../mod/wallmessage.php:134 ../../mod/message.php:206
-#: ../../mod/message.php:401
+#: ../../mod/wallmessage.php:141 ../../mod/message.php:284
+#: ../../mod/message.php:469
 msgid "Subject:"
 msgstr "Betreff:"
 
-#: ../../mod/wallmessage.php:140 ../../mod/message.php:210
-#: ../../mod/message.php:404 ../../mod/invite.php:113
+#: ../../mod/wallmessage.php:147 ../../mod/message.php:288
+#: ../../mod/message.php:472 ../../mod/invite.php:113
 msgid "Your message:"
 msgstr "Deine Nachricht:"
 
@@ -2509,21 +2698,21 @@ msgid ""
 "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 für Dich an Deiner Pinnwand für zwei Wochen nach dem Registrierungsdatum sichtbar und wird dann verschwinden."
+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 für dich an Deiner Pinnwand für zwei Wochen nach dem Registrierungsdatum sichtbar und wird dann verschwinden."
 
 #: ../../mod/newmember.php:16
 msgid ""
 "On your <em>Quick Start</em> page - find a brief introduction to your "
-"profile and network tabs, connect to Facebook, make some new connections, "
-"and find some groups to join."
-msgstr "Auf der <em>Quick Start</em> Seite findest du eine kurze Einleitung in die einzelnen Funktionen deines Profils und die Netzwerk-Reiter, wo du interessante Foren findest, wie du alte Freunde von Facebook wieder findest und neue Kontakte knüpfst."
+"profile and network tabs, make some new connections, and find some groups to"
+" join."
+msgstr "Auf der <em>Quick Start</em> Seite findest du eine kurze Einleitung in die einzelnen Funktionen deines Profils und die Netzwerk-Reiter, wo du interessante Foren findest und neue Kontakte knüpfst."
 
 #: ../../mod/newmember.php:18
 msgid ""
 "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."
-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ötigt, um Freundschaften mit anderen im Friendica Netzwerk zu schliessen."
+msgstr "Ändere bitte unter <em>Einstellungen</em> dein Passwort. Außerdem merke dir deine Identifikationsadresse. Diese sieht aus wie eine E-Mail-Adresse und wird benötigt, um Freundschaften mit anderen im Friendica Netzwerk zu schliessen."
 
 #: ../../mod/newmember.php:20
 msgid ""
@@ -2531,7 +2720,7 @@ msgid ""
 " 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."
-msgstr "Ãœberprüfe die restlichen Einstellungen, insbesondere die Einstellungen zur Privatsphäre. Wenn du dein Profil nicht veröffentlichst, ist das als wenn Du Deine Telefonnummer nicht ins Telefonbuch einträgst. Im Allgemeinen solltest du es veröffentlichen - außer all deine Freunde und potentiellen Freunde wissen genau, wie sie dich finden können."
+msgstr "Ãœberprüfe die restlichen Einstellungen, insbesondere die Einstellungen zur Privatsphäre. Wenn du dein Profil nicht veröffentlichst, ist das als wenn du deine Telefonnummer nicht ins Telefonbuch einträgst. Im Allgemeinen solltest du es veröffentlichen - außer all deine Freunde und potentiellen Freunde wissen genau, wie sie dich finden können."
 
 #: ../../mod/newmember.php:22
 msgid ""
@@ -2633,7 +2822,7 @@ msgstr "Gruppe nicht gefunden."
 msgid "Group name changed."
 msgstr "Gruppenname geändert."
 
-#: ../../mod/group.php:72 ../../mod/profperm.php:19 ../../index.php:298
+#: ../../mod/group.php:72 ../../mod/profperm.php:19 ../../index.php:314
 msgid "Permission denied"
 msgstr "Zugriff verweigert"
 
@@ -2674,8 +2863,8 @@ msgid "Profile Visibility Editor"
 msgstr "Editor für die Profil-Sichtbarkeit"
 
 #: ../../mod/profperm.php:103 ../../view/theme/diabook/theme.php:128
-#: ../../include/profile_advanced.php:7 ../../include/profile_advanced.php:79
-#: ../../include/nav.php:50 ../../boot.php:1514
+#: ../../include/profile_advanced.php:7 ../../include/profile_advanced.php:84
+#: ../../include/nav.php:50 ../../boot.php:1642
 msgid "Profile"
 msgstr "Profil"
 
@@ -2691,7 +2880,7 @@ msgstr "Alle Kontakte (mit gesichertem Profilzugriff)"
 msgid "No contacts."
 msgstr "Keine Kontakte."
 
-#: ../../mod/viewcontacts.php:76 ../../include/text.php:589
+#: ../../mod/viewcontacts.php:76 ../../include/text.php:618
 msgid "View Contacts"
 msgstr "Kontakte anzeigen"
 
@@ -2756,7 +2945,7 @@ msgstr "Mitgliedschaft auf dieser Seite ist nur nach vorheriger Einladung mögli
 msgid "Your invitation ID: "
 msgstr "ID deiner Einladung: "
 
-#: ../../mod/register.php:255 ../../mod/admin.php:421
+#: ../../mod/register.php:255 ../../mod/admin.php:436
 msgid "Registration"
 msgstr "Registrierung"
 
@@ -2779,41 +2968,41 @@ 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:269 ../../include/nav.php:81 ../../boot.php:801
+#: ../../mod/register.php:269 ../../include/nav.php:81 ../../boot.php:896
 msgid "Register"
 msgstr "Registrieren"
 
 #: ../../mod/dirfind.php:26
 msgid "People Search"
-msgstr "Personen Suche"
+msgstr "Personensuche"
 
-#: ../../mod/like.php:185 ../../mod/like.php:259 ../../mod/tagger.php:70
-#: ../../addon/facebook/facebook.php:1576
+#: ../../mod/like.php:145 ../../mod/like.php:298 ../../mod/tagger.php:70
+#: ../../addon/facebook/facebook.php:1594
 #: ../../addon/communityhome/communityhome.php:158
 #: ../../addon/communityhome/communityhome.php:167
 #: ../../view/theme/diabook/theme.php:565
-#: ../../view/theme/diabook/theme.php:574 ../../include/diaspora.php:1709
-#: ../../include/conversation.php:48 ../../include/conversation.php:57
-#: ../../include/conversation.php:121 ../../include/conversation.php:130
+#: ../../view/theme/diabook/theme.php:574 ../../include/diaspora.php:1824
+#: ../../include/conversation.php:109 ../../include/conversation.php:118
+#: ../../include/conversation.php:239 ../../include/conversation.php:248
 msgid "status"
 msgstr "Status"
 
-#: ../../mod/like.php:202 ../../addon/facebook/facebook.php:1580
+#: ../../mod/like.php:162 ../../addon/facebook/facebook.php:1598
 #: ../../addon/communityhome/communityhome.php:172
-#: ../../view/theme/diabook/theme.php:579 ../../include/diaspora.php:1725
-#: ../../include/conversation.php:65
+#: ../../view/theme/diabook/theme.php:579 ../../include/diaspora.php:1840
+#: ../../include/conversation.php:126
 #, php-format
 msgid "%1$s likes %2$s's %3$s"
 msgstr "%1$s mag %2$ss %3$s"
 
-#: ../../mod/like.php:204 ../../include/conversation.php:68
+#: ../../mod/like.php:164 ../../include/conversation.php:129
 #, 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:159
-#: ../../mod/admin.php:700 ../../mod/admin.php:899 ../../mod/display.php:37
-#: ../../mod/display.php:142 ../../include/items.php:3234
+#: ../../mod/admin.php:720 ../../mod/admin.php:919 ../../mod/display.php:29
+#: ../../mod/display.php:135 ../../include/items.php:3697
 msgid "Item not found."
 msgstr "Beitrag nicht gefunden."
 
@@ -2822,7 +3011,7 @@ msgid "Access denied."
 msgstr "Zugriff verweigert."
 
 #: ../../mod/fbrowser.php:25 ../../view/theme/diabook/theme.php:130
-#: ../../include/nav.php:51 ../../boot.php:1520
+#: ../../include/nav.php:51 ../../boot.php:1649
 msgid "Photos"
 msgstr "Bilder"
 
@@ -2843,53 +3032,66 @@ msgstr "Registrierung für %s wurde zurückgezogen"
 msgid "Please login."
 msgstr "Bitte melde dich an."
 
-#: ../../mod/item.php:89
+#: ../../mod/item.php:91
 msgid "Unable to locate original post."
 msgstr "Konnte den Originalbeitrag nicht finden."
 
-#: ../../mod/item.php:258
+#: ../../mod/item.php:275
 msgid "Empty post discarded."
 msgstr "Leerer Beitrag wurde verworfen."
 
-#: ../../mod/item.php:379 ../../mod/wall_upload.php:102
-#: ../../mod/wall_upload.php:111 ../../mod/wall_upload.php:118
+#: ../../mod/item.php:396 ../../mod/wall_upload.php:122
+#: ../../mod/wall_upload.php:131 ../../mod/wall_upload.php:138
 #: ../../include/message.php:144
 msgid "Wall Photos"
 msgstr "Pinnwand-Bilder"
 
-#: ../../mod/item.php:800
+#: ../../mod/item.php:809
 msgid "System error. Post not saved."
 msgstr "Systemfehler. Beitrag konnte nicht gespeichert werden."
 
-#: ../../mod/item.php:825
+#: ../../mod/item.php:834
 #, 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:827
+#: ../../mod/item.php:836
 #, php-format
 msgid "You may visit them online at %s"
 msgstr "Du kannst sie online unter %s besuchen"
 
-#: ../../mod/item.php:828
+#: ../../mod/item.php:837
 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:830
+#: ../../mod/item.php:839
 #, php-format
 msgid "%s posted an update."
 msgstr "%s hat ein Update veröffentlicht."
 
+#: ../../mod/mood.php:62 ../../include/conversation.php:217
+#, php-format
+msgid "%1$s is currently %2$s"
+msgstr "%1$s ist momentan %2$s"
+
+#: ../../mod/mood.php:133
+msgid "Mood"
+msgstr "Stimmung"
+
+#: ../../mod/mood.php:134
+msgid "Set your current mood and tell your friends"
+msgstr "Wähle deine aktuelle Stimmung und erzähle sie deinen Freunden"
+
 #: ../../mod/profile_photo.php:30
 msgid "Image uploaded but image cropping failed."
 msgstr "Bilder hochgeladen, aber das Zuschneiden ist fehlgeschlagen."
 
 #: ../../mod/profile_photo.php:63 ../../mod/profile_photo.php:70
-#: ../../mod/profile_photo.php:77 ../../mod/profile_photo.php:266
+#: ../../mod/profile_photo.php:77 ../../mod/profile_photo.php:273
 #, php-format
 msgid "Image size reduction [%s] failed."
 msgstr "Verkleinern der Bildgröße von [%s] ist gescheitert."
@@ -2909,39 +3111,40 @@ msgstr "Bild konnte nicht verarbeitet werden"
 msgid "Image exceeds size limit of %d"
 msgstr "Bildgröße Ã¼berschreitet das Limit von %d"
 
-#: ../../mod/profile_photo.php:209
+#: ../../mod/profile_photo.php:210
 msgid "Upload File:"
 msgstr "Datei hochladen:"
 
-#: ../../mod/profile_photo.php:210
+#: ../../mod/profile_photo.php:211
 msgid "Upload Profile Photo"
 msgstr "Profilbild hochladen"
 
-#: ../../mod/profile_photo.php:211
+#: ../../mod/profile_photo.php:212
+#: ../../addon/dav/friendica/layout.fnk.php:152
 msgid "Upload"
 msgstr "Hochladen"
 
-#: ../../mod/profile_photo.php:213
+#: ../../mod/profile_photo.php:214
 msgid "skip this step"
 msgstr "diesen Schritt Ã¼berspringen"
 
-#: ../../mod/profile_photo.php:213
+#: ../../mod/profile_photo.php:214
 msgid "select a photo from your photo albums"
 msgstr "wähle ein Foto von deinen Fotoalben"
 
-#: ../../mod/profile_photo.php:226
+#: ../../mod/profile_photo.php:227
 msgid "Crop Image"
 msgstr "Bild zurechtschneiden"
 
-#: ../../mod/profile_photo.php:227
+#: ../../mod/profile_photo.php:228
 msgid "Please adjust the image cropping for optimum viewing."
 msgstr "Passe bitte den Bildausschnitt an, damit das Bild optimal dargestellt werden kann."
 
-#: ../../mod/profile_photo.php:229
+#: ../../mod/profile_photo.php:230
 msgid "Done Editing"
 msgstr "Bearbeitung abgeschlossen"
 
-#: ../../mod/profile_photo.php:257
+#: ../../mod/profile_photo.php:264
 msgid "Image uploaded successfully."
 msgstr "Bild erfolgreich auf den Server geladen."
 
@@ -2967,67 +3170,67 @@ msgstr "Bitte gib dein Passwort zur Verifikation ein:"
 msgid "New Message"
 msgstr "Neue Nachricht"
 
-#: ../../mod/message.php:70
+#: ../../mod/message.php:63
 msgid "Unable to locate contact information."
 msgstr "Konnte die Kontaktinformationen nicht finden."
 
-#: ../../mod/message.php:120
+#: ../../mod/message.php:191
 msgid "Message deleted."
 msgstr "Nachricht gelöscht."
 
-#: ../../mod/message.php:150
+#: ../../mod/message.php:221
 msgid "Conversation removed."
 msgstr "Unterhaltung gelöscht."
 
-#: ../../mod/message.php:247
+#: ../../mod/message.php:327
 msgid "No messages."
 msgstr "Keine Nachrichten."
 
-#: ../../mod/message.php:254
+#: ../../mod/message.php:334
 #, php-format
 msgid "Unknown sender - %s"
 msgstr "'Unbekannter Absender - %s"
 
-#: ../../mod/message.php:257
+#: ../../mod/message.php:337
 #, php-format
 msgid "You and %s"
 msgstr "Du und %s"
 
-#: ../../mod/message.php:260
+#: ../../mod/message.php:340
 #, php-format
 msgid "%s and You"
-msgstr "%s und Du"
+msgstr "%s und du"
 
-#: ../../mod/message.php:270 ../../mod/message.php:392
+#: ../../mod/message.php:350 ../../mod/message.php:460
 msgid "Delete conversation"
 msgstr "Unterhaltung löschen"
 
-#: ../../mod/message.php:273
+#: ../../mod/message.php:353
 msgid "D, d M Y - g:i A"
 msgstr "D, d. M Y - g:i A"
 
-#: ../../mod/message.php:275
+#: ../../mod/message.php:355
 #, php-format
 msgid "%d message"
 msgid_plural "%d messages"
 msgstr[0] "%d Nachricht"
 msgstr[1] "%d Nachrichten"
 
-#: ../../mod/message.php:310
+#: ../../mod/message.php:390
 msgid "Message not available."
 msgstr "Nachricht nicht verfügbar."
 
-#: ../../mod/message.php:375
+#: ../../mod/message.php:443
 msgid "Delete message"
 msgstr "Nachricht löschen"
 
-#: ../../mod/message.php:394
+#: ../../mod/message.php:462
 msgid ""
 "No secure communications available. You <strong>may</strong> be able to "
 "respond from the sender's profile page."
 msgstr "Sichere Kommunikation ist nicht verfügbar. <strong>Eventuell</strong> kannst du auf der Profilseite des Absenders antworten."
 
-#: ../../mod/message.php:398
+#: ../../mod/message.php:466
 msgid "Send Reply"
 msgstr "Antwort senden"
 
@@ -3044,19 +3247,19 @@ msgstr "Keine Freunde zum Anzeigen."
 msgid "Theme settings updated."
 msgstr "Themeneinstellungen aktualisiert."
 
-#: ../../mod/admin.php:96 ../../mod/admin.php:419
+#: ../../mod/admin.php:96 ../../mod/admin.php:434
 msgid "Site"
 msgstr "Seite"
 
-#: ../../mod/admin.php:97 ../../mod/admin.php:655 ../../mod/admin.php:667
+#: ../../mod/admin.php:97 ../../mod/admin.php:675 ../../mod/admin.php:687
 msgid "Users"
 msgstr "Nutzer"
 
-#: ../../mod/admin.php:98 ../../mod/admin.php:749 ../../mod/admin.php:791
+#: ../../mod/admin.php:98 ../../mod/admin.php:769 ../../mod/admin.php:811
 msgid "Plugins"
 msgstr "Plugins"
 
-#: ../../mod/admin.php:99 ../../mod/admin.php:954 ../../mod/admin.php:990
+#: ../../mod/admin.php:99 ../../mod/admin.php:974 ../../mod/admin.php:1010
 msgid "Themes"
 msgstr "Themen"
 
@@ -3064,7 +3267,7 @@ msgstr "Themen"
 msgid "DB updates"
 msgstr "DB Updates"
 
-#: ../../mod/admin.php:115 ../../mod/admin.php:122 ../../mod/admin.php:1077
+#: ../../mod/admin.php:115 ../../mod/admin.php:122 ../../mod/admin.php:1097
 msgid "Logs"
 msgstr "Protokolle"
 
@@ -3080,561 +3283,589 @@ msgstr "Plugin Features"
 msgid "User registrations waiting for confirmation"
 msgstr "Nutzeranmeldungen die auf Bestätigung warten"
 
-#: ../../mod/admin.php:183 ../../mod/admin.php:637
+#: ../../mod/admin.php:183 ../../mod/admin.php:657
 msgid "Normal Account"
 msgstr "Normales Konto"
 
-#: ../../mod/admin.php:184 ../../mod/admin.php:638
+#: ../../mod/admin.php:184 ../../mod/admin.php:658
 msgid "Soapbox Account"
 msgstr "Marktschreier-Konto"
 
-#: ../../mod/admin.php:185 ../../mod/admin.php:639
+#: ../../mod/admin.php:185 ../../mod/admin.php:659
 msgid "Community/Celebrity Account"
 msgstr "Forum/Promi-Konto"
 
-#: ../../mod/admin.php:186 ../../mod/admin.php:640
+#: ../../mod/admin.php:186 ../../mod/admin.php:660
 msgid "Automatic Friend Account"
 msgstr "Automatisches Freundekonto"
 
-#: ../../mod/admin.php:205
+#: ../../mod/admin.php:187
+msgid "Blog Account"
+msgstr "Blog Account"
+
+#: ../../mod/admin.php:188
+msgid "Private Forum"
+msgstr "Privates Forum"
+
+#: ../../mod/admin.php:207
 msgid "Message queues"
 msgstr "Nachrichten-Warteschlangen"
 
-#: ../../mod/admin.php:210 ../../mod/admin.php:418 ../../mod/admin.php:654
-#: ../../mod/admin.php:748 ../../mod/admin.php:790 ../../mod/admin.php:953
-#: ../../mod/admin.php:989 ../../mod/admin.php:1076
+#: ../../mod/admin.php:212 ../../mod/admin.php:433 ../../mod/admin.php:674
+#: ../../mod/admin.php:768 ../../mod/admin.php:810 ../../mod/admin.php:973
+#: ../../mod/admin.php:1009 ../../mod/admin.php:1096
 msgid "Administration"
 msgstr "Administration"
 
-#: ../../mod/admin.php:211
+#: ../../mod/admin.php:213
 msgid "Summary"
 msgstr "Zusammenfassung"
 
-#: ../../mod/admin.php:213
+#: ../../mod/admin.php:215
 msgid "Registered users"
 msgstr "Registrierte Nutzer"
 
-#: ../../mod/admin.php:215
+#: ../../mod/admin.php:217
 msgid "Pending registrations"
 msgstr "Anstehende Anmeldungen"
 
-#: ../../mod/admin.php:216
+#: ../../mod/admin.php:218
 msgid "Version"
 msgstr "Version"
 
-#: ../../mod/admin.php:218
+#: ../../mod/admin.php:220
 msgid "Active plugins"
 msgstr "Aktive Plugins"
 
-#: ../../mod/admin.php:357
+#: ../../mod/admin.php:367
 msgid "Site settings updated."
 msgstr "Seiteneinstellungen aktualisiert."
 
-#: ../../mod/admin.php:405
+#: ../../mod/admin.php:396
+msgid "Don't apply a special theme for mobile devices."
+msgstr "Kein spezielles Theme für mobile Geräte verwenden."
+
+#: ../../mod/admin.php:420
 msgid "Closed"
 msgstr "Geschlossen"
 
-#: ../../mod/admin.php:406
+#: ../../mod/admin.php:421
 msgid "Requires approval"
 msgstr "Bedarf der Zustimmung"
 
-#: ../../mod/admin.php:407
+#: ../../mod/admin.php:422
 msgid "Open"
 msgstr "Offen"
 
-#: ../../mod/admin.php:411
+#: ../../mod/admin.php:426
 msgid "No SSL policy, links will track page SSL state"
 msgstr "Keine SSL Richtlinie, Links werden das verwendete Protokoll beibehalten"
 
-#: ../../mod/admin.php:412
+#: ../../mod/admin.php:427
 msgid "Force all links to use SSL"
 msgstr "SSL für alle Links erzwingen"
 
-#: ../../mod/admin.php:413
+#: ../../mod/admin.php:428
 msgid "Self-signed certificate, use SSL for local links only (discouraged)"
 msgstr "Selbst-unterzeichnetes Zertifikat, SSL nur für lokale Links verwenden (nicht empfohlen)"
 
-#: ../../mod/admin.php:422
+#: ../../mod/admin.php:437
 msgid "File upload"
 msgstr "Datei hochladen"
 
-#: ../../mod/admin.php:423
+#: ../../mod/admin.php:438
 msgid "Policies"
 msgstr "Regeln"
 
-#: ../../mod/admin.php:424
+#: ../../mod/admin.php:439
 msgid "Advanced"
 msgstr "Erweitert"
 
-#: ../../mod/admin.php:428 ../../addon/statusnet/statusnet.php:552
+#: ../../mod/admin.php:443 ../../addon/statusnet/statusnet.php:567
 msgid "Site name"
 msgstr "Seitenname"
 
-#: ../../mod/admin.php:429
+#: ../../mod/admin.php:444
 msgid "Banner/Logo"
 msgstr "Banner/Logo"
 
-#: ../../mod/admin.php:430
+#: ../../mod/admin.php:445
 msgid "System language"
 msgstr "Systemsprache"
 
-#: ../../mod/admin.php:431
+#: ../../mod/admin.php:446
 msgid "System theme"
 msgstr "Systemweites Thema"
 
-#: ../../mod/admin.php:431
+#: ../../mod/admin.php:446
 msgid ""
 "Default system theme - may be over-ridden by user profiles - <a href='#' "
 "id='cnftheme'>change theme settings</a>"
 msgstr "Vorgabe für das System-Theme - kann von Benutzerprofilen Ã¼berschrieben werden - <a href='#' id='cnftheme'>Theme-Einstellungen Ã¤ndern</a>"
 
-#: ../../mod/admin.php:432
+#: ../../mod/admin.php:447
+msgid "Mobile system theme"
+msgstr "Systemweites mobiles Thema"
+
+#: ../../mod/admin.php:447
+msgid "Theme for mobile devices"
+msgstr "Thema für mobile Geräte"
+
+#: ../../mod/admin.php:448
 msgid "SSL link policy"
 msgstr "Regeln für SSL Links"
 
-#: ../../mod/admin.php:432
+#: ../../mod/admin.php:448
 msgid "Determines whether generated links should be forced to use SSL"
 msgstr "Bestimmt, ob generierte Links SSL verwenden müssen"
 
-#: ../../mod/admin.php:433
+#: ../../mod/admin.php:449
 msgid "Maximum image size"
 msgstr "Maximale Größe von Bildern"
 
-#: ../../mod/admin.php:433
+#: ../../mod/admin.php:449
 msgid ""
 "Maximum size in bytes of uploaded images. Default is 0, which means no "
 "limits."
 msgstr "Maximale Upload-Größe von Bildern in Bytes. Standard ist 0, d.h. ohne Limit."
 
-#: ../../mod/admin.php:435
+#: ../../mod/admin.php:451
 msgid "Register policy"
 msgstr "Registrierungsmethode"
 
-#: ../../mod/admin.php:436
+#: ../../mod/admin.php:452
 msgid "Register text"
 msgstr "Registrierungstext"
 
-#: ../../mod/admin.php:436
+#: ../../mod/admin.php:452
 msgid "Will be displayed prominently on the registration page."
 msgstr "Wird gut sichtbar auf der Registrierungsseite angezeigt."
 
-#: ../../mod/admin.php:437
+#: ../../mod/admin.php:453
 msgid "Accounts abandoned after x days"
 msgstr "Nutzerkonten gelten nach x Tagen als unbenutzt"
 
-#: ../../mod/admin.php:437
+#: ../../mod/admin.php:453
 msgid ""
 "Will not waste system resources polling external sites for abandonded "
 "accounts. Enter 0 for no time limit."
 msgstr "Verschwende keine System-Ressourcen auf das Pollen externer Seiten, wenn Konten nicht mehr benutzt werden. 0 eingeben für kein Limit."
 
-#: ../../mod/admin.php:438
+#: ../../mod/admin.php:454
 msgid "Allowed friend domains"
 msgstr "Erlaubte Domains für Kontakte"
 
-#: ../../mod/admin.php:438
+#: ../../mod/admin.php:454
 msgid ""
 "Comma separated list of domains which are allowed to establish friendships "
 "with this site. Wildcards are accepted. Empty to allow any domains"
 msgstr "Liste der Domains, die für Freundschaften erlaubt sind, durch Kommas getrennt. Platzhalter werden akzeptiert. Leer lassen, um alle Domains zu erlauben."
 
-#: ../../mod/admin.php:439
+#: ../../mod/admin.php:455
 msgid "Allowed email domains"
-msgstr "Erlaubte Domains für Emails"
+msgstr "Erlaubte Domains für E-Mails"
 
-#: ../../mod/admin.php:439
+#: ../../mod/admin.php:455
 msgid ""
 "Comma separated list of domains which are allowed in email addresses for "
 "registrations to this site. Wildcards are accepted. Empty to allow any "
 "domains"
 msgstr "Liste der Domains, die für E-Mail-Adressen bei der Registrierung erlaubt sind, durch Kommas getrennt. Platzhalter werden akzeptiert. Leer lassen, um alle Domains zu erlauben."
 
-#: ../../mod/admin.php:440
+#: ../../mod/admin.php:456
 msgid "Block public"
 msgstr "Öffentlichen Zugriff blockieren"
 
-#: ../../mod/admin.php:440
+#: ../../mod/admin.php:456
 msgid ""
 "Check to block public access to all otherwise public personal pages on this "
 "site unless you are currently logged in."
 msgstr "Klicken, um Ã¶ffentlichen Zugriff auf sonst Ã¶ffentliche Profile zu blockieren, wenn man nicht eingeloggt ist."
 
-#: ../../mod/admin.php:441
+#: ../../mod/admin.php:457
 msgid "Force publish"
 msgstr "Erzwinge Veröffentlichung"
 
-#: ../../mod/admin.php:441
+#: ../../mod/admin.php:457
 msgid ""
 "Check to force all profiles on this site to be listed in the site directory."
 msgstr "Klicken, um Anzeige aller Profile dieses Servers im Verzeichnis zu erzwingen."
 
-#: ../../mod/admin.php:442
+#: ../../mod/admin.php:458
 msgid "Global directory update URL"
 msgstr "URL für Updates beim weltweiten Verzeichnis"
 
-#: ../../mod/admin.php:442
+#: ../../mod/admin.php:458
 msgid ""
 "URL to update the global directory. If this is not set, the global directory"
 " is completely unavailable to the application."
 msgstr "URL für Update des globalen Verzeichnisses. Wenn nichts eingetragen ist, bleibt das globale Verzeichnis unerreichbar."
 
-#: ../../mod/admin.php:444
+#: ../../mod/admin.php:459
+msgid "Allow threaded items"
+msgstr "Erlaube Threads in Diskussionen"
+
+#: ../../mod/admin.php:459
+msgid "Allow infinite level threading for items on this site."
+msgstr "Erlaube ein unendliches Level für Threads auf dieser Seite."
+
+#: ../../mod/admin.php:461
 msgid "Block multiple registrations"
 msgstr "Unterbinde Mehrfachregistrierung"
 
-#: ../../mod/admin.php:444
+#: ../../mod/admin.php:461
 msgid "Disallow users to register additional accounts for use as pages."
 msgstr "Benutzern nicht erlauben, weitere Konten als zusätzliche Profile anzulegen."
 
-#: ../../mod/admin.php:445
+#: ../../mod/admin.php:462
 msgid "OpenID support"
 msgstr "OpenID Unterstützung"
 
-#: ../../mod/admin.php:445
+#: ../../mod/admin.php:462
 msgid "OpenID support for registration and logins."
 msgstr "OpenID-Unterstützung für Registrierung und Login."
 
-#: ../../mod/admin.php:446
+#: ../../mod/admin.php:463
 msgid "Fullname check"
 msgstr "Namen auf Vollständigkeit Ã¼berprüfen"
 
-#: ../../mod/admin.php:446
+#: ../../mod/admin.php:463
 msgid ""
 "Force users to register with a space between firstname and lastname in Full "
 "name, as an antispam measure"
 msgstr "Leerzeichen zwischen Vor- und Nachname im vollständigen Namen erzwingen, um SPAM zu vermeiden."
 
-#: ../../mod/admin.php:447
+#: ../../mod/admin.php:464
 msgid "UTF-8 Regular expressions"
 msgstr "UTF-8 Reguläre Ausdrücke"
 
-#: ../../mod/admin.php:447
+#: ../../mod/admin.php:464
 msgid "Use PHP UTF8 regular expressions"
 msgstr "PHP UTF8 Ausdrücke verwenden"
 
-#: ../../mod/admin.php:448
+#: ../../mod/admin.php:465
 msgid "Show Community Page"
 msgstr "Gemeinschaftsseite anzeigen"
 
-#: ../../mod/admin.php:448
+#: ../../mod/admin.php:465
 msgid ""
 "Display a Community page showing all recent public postings on this site."
 msgstr "Zeige die Gemeinschaftsseite mit allen Ã¶ffentlichen Beiträgen auf diesem Server."
 
-#: ../../mod/admin.php:449
+#: ../../mod/admin.php:466
 msgid "Enable OStatus support"
 msgstr "OStatus Unterstützung aktivieren"
 
-#: ../../mod/admin.php:449
+#: ../../mod/admin.php:466
 msgid ""
 "Provide built-in OStatus (identi.ca, status.net, etc.) compatibility. All "
 "communications in OStatus are public, so privacy warnings will be "
 "occasionally displayed."
 msgstr "Biete die eingebaute OStatus (identi.ca, status.net, etc.) Unterstützung an. Jede Kommunikation in OStatus ist Ã¶ffentlich, so Privatsphäre Warnungen werden bei Bedarf angezeigt."
 
-#: ../../mod/admin.php:450
+#: ../../mod/admin.php:467
 msgid "Enable Diaspora support"
 msgstr "Diaspora-Support aktivieren"
 
-#: ../../mod/admin.php:450
+#: ../../mod/admin.php:467
 msgid "Provide built-in Diaspora network compatibility."
 msgstr "Verwende die eingebaute Diaspora-Verknüpfung."
 
-#: ../../mod/admin.php:451
+#: ../../mod/admin.php:468
 msgid "Only allow Friendica contacts"
 msgstr "Nur Friendica-Kontakte erlauben"
 
-#: ../../mod/admin.php:451
+#: ../../mod/admin.php:468
 msgid ""
 "All contacts must use Friendica protocols. All other built-in communication "
 "protocols disabled."
 msgstr "Alle Kontakte müssen das Friendica Protokoll nutzen. Alle anderen Kommunikationsprotokolle werden deaktiviert."
 
-#: ../../mod/admin.php:452
+#: ../../mod/admin.php:469
 msgid "Verify SSL"
 msgstr "SSL Ãœberprüfen"
 
-#: ../../mod/admin.php:452
+#: ../../mod/admin.php:469
 msgid ""
 "If you wish, you can turn on strict certificate checking. This will mean you"
 " cannot connect (at all) to self-signed SSL sites."
 msgstr "Wenn gewollt, kann man hier eine strenge Zertifikatkontrolle einstellen. Das bedeutet, dass man zu keinen Seiten mit selbst unterzeichnetem SSL eine Verbindung herstellen kann."
 
-#: ../../mod/admin.php:453
+#: ../../mod/admin.php:470
 msgid "Proxy user"
 msgstr "Proxy Nutzer"
 
-#: ../../mod/admin.php:454
+#: ../../mod/admin.php:471
 msgid "Proxy URL"
 msgstr "Proxy URL"
 
-#: ../../mod/admin.php:455
+#: ../../mod/admin.php:472
 msgid "Network timeout"
 msgstr "Netzwerk Wartezeit"
 
-#: ../../mod/admin.php:455
+#: ../../mod/admin.php:472
 msgid "Value is in seconds. Set to 0 for unlimited (not recommended)."
 msgstr "Der Wert ist in Sekunden. Setze 0 für unbegrenzt (nicht empfohlen)."
 
-#: ../../mod/admin.php:456
+#: ../../mod/admin.php:473
 msgid "Delivery interval"
 msgstr "Zustellungsintervall"
 
-#: ../../mod/admin.php:456
+#: ../../mod/admin.php:473
 msgid ""
 "Delay background delivery processes by this many seconds to reduce system "
 "load. Recommend: 4-5 for shared hosts, 2-3 for virtual private servers. 0-1 "
 "for large dedicated servers."
 msgstr "Verzögere im Hintergrund laufende Auslieferungsprozesse um die angegebene Anzahl an Sekunden, um die Systemlast zu verringern. Empfehlungen: 4-5 für Shared-Hosts, 2-3 für VPS, 0-1 für große dedizierte Server."
 
-#: ../../mod/admin.php:457
+#: ../../mod/admin.php:474
 msgid "Poll interval"
 msgstr "Abfrageintervall"
 
-#: ../../mod/admin.php:457
+#: ../../mod/admin.php:474
 msgid ""
 "Delay background polling processes by this many seconds to reduce system "
 "load. If 0, use delivery interval."
 msgstr "Verzögere Hintergrundprozesse, um diese Anzahl an Sekunden um die Systemlast zu reduzieren. Bei 0 Sekunden wird das Auslieferungsintervall verwendet."
 
-#: ../../mod/admin.php:458
+#: ../../mod/admin.php:475
 msgid "Maximum Load Average"
 msgstr "Maximum Load Average"
 
-#: ../../mod/admin.php:458
+#: ../../mod/admin.php:475
 msgid ""
 "Maximum system load before delivery and poll processes are deferred - "
 "default 50."
 msgstr "Maximale Systemlast bevor Verteil- und Empfangsprozesse verschoben werden - Standard 50"
 
-#: ../../mod/admin.php:472
+#: ../../mod/admin.php:492
 msgid "Update has been marked successful"
 msgstr "Update wurde als erfolgreich markiert"
 
-#: ../../mod/admin.php:482
+#: ../../mod/admin.php:502
 #, php-format
 msgid "Executing %s failed. Check system logs."
 msgstr "Ausführung von %s schlug fehl. Systemprotokolle prüfen."
 
-#: ../../mod/admin.php:485
+#: ../../mod/admin.php:505
 #, php-format
 msgid "Update %s was successfully applied."
 msgstr "Update %s war erfolgreich."
 
-#: ../../mod/admin.php:489
+#: ../../mod/admin.php:509
 #, php-format
 msgid "Update %s did not return a status. Unknown if it succeeded."
 msgstr "Update %s hat keinen Status zurückgegeben. Unbekannter Status."
 
-#: ../../mod/admin.php:492
+#: ../../mod/admin.php:512
 #, php-format
 msgid "Update function %s could not be found."
 msgstr "Updatefunktion %s konnte nicht gefunden werden."
 
-#: ../../mod/admin.php:507
+#: ../../mod/admin.php:527
 msgid "No failed updates."
 msgstr "Keine fehlgeschlagenen Updates."
 
-#: ../../mod/admin.php:511
+#: ../../mod/admin.php:531
 msgid "Failed Updates"
 msgstr "Fehlgeschlagene Updates"
 
-#: ../../mod/admin.php:512
+#: ../../mod/admin.php:532
 msgid ""
 "This does not include updates prior to 1139, which did not return a status."
 msgstr "Ohne Updates vor 1139, da diese keinen Status zurückgegeben haben."
 
-#: ../../mod/admin.php:513
+#: ../../mod/admin.php:533
 msgid "Mark success (if update was manually applied)"
 msgstr "Als erfolgreich markieren (falls das Update manuell installiert wurde)"
 
-#: ../../mod/admin.php:514
+#: ../../mod/admin.php:534
 msgid "Attempt to execute this update step automatically"
 msgstr "Versuchen, diesen Schritt automatisch auszuführen"
 
-#: ../../mod/admin.php:539
+#: ../../mod/admin.php:559
 #, php-format
 msgid "%s user blocked/unblocked"
 msgid_plural "%s users blocked/unblocked"
 msgstr[0] "%s Benutzer geblockt/freigegeben"
 msgstr[1] "%s Benutzer geblockt/freigegeben"
 
-#: ../../mod/admin.php:546
+#: ../../mod/admin.php:566
 #, 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:585
+#: ../../mod/admin.php:605
 #, php-format
 msgid "User '%s' deleted"
 msgstr "Nutzer '%s' gelöscht"
 
-#: ../../mod/admin.php:593
+#: ../../mod/admin.php:613
 #, php-format
 msgid "User '%s' unblocked"
 msgstr "Nutzer '%s' entsperrt"
 
-#: ../../mod/admin.php:593
+#: ../../mod/admin.php:613
 #, php-format
 msgid "User '%s' blocked"
 msgstr "Nutzer '%s' gesperrt"
 
-#: ../../mod/admin.php:657
+#: ../../mod/admin.php:677
 msgid "select all"
 msgstr "Alle auswählen"
 
-#: ../../mod/admin.php:658
+#: ../../mod/admin.php:678
 msgid "User registrations waiting for confirm"
 msgstr "Neuanmeldungen, die auf deine Bestätigung warten"
 
-#: ../../mod/admin.php:659
+#: ../../mod/admin.php:679
 msgid "Request date"
 msgstr "Anfragedatum"
 
-#: ../../mod/admin.php:659 ../../mod/admin.php:668
+#: ../../mod/admin.php:679 ../../mod/admin.php:688
 #: ../../include/contact_selectors.php:79
 msgid "Email"
-msgstr "Email"
+msgstr "E-Mail"
 
-#: ../../mod/admin.php:660
+#: ../../mod/admin.php:680
 msgid "No registrations."
 msgstr "Keine Neuanmeldungen."
 
-#: ../../mod/admin.php:662
+#: ../../mod/admin.php:682
 msgid "Deny"
 msgstr "Verwehren"
 
-#: ../../mod/admin.php:668
+#: ../../mod/admin.php:688
 msgid "Register date"
 msgstr "Anmeldedatum"
 
-#: ../../mod/admin.php:668
+#: ../../mod/admin.php:688
 msgid "Last login"
 msgstr "Letzte Anmeldung"
 
-#: ../../mod/admin.php:668
+#: ../../mod/admin.php:688
 msgid "Last item"
 msgstr "Letzter Beitrag"
 
-#: ../../mod/admin.php:668
+#: ../../mod/admin.php:688
 msgid "Account"
 msgstr "Nutzerkonto"
 
-#: ../../mod/admin.php:670
+#: ../../mod/admin.php:690
 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:671
+#: ../../mod/admin.php:691
 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:712
+#: ../../mod/admin.php:732
 #, php-format
 msgid "Plugin %s disabled."
 msgstr "Plugin %s deaktiviert."
 
-#: ../../mod/admin.php:716
+#: ../../mod/admin.php:736
 #, php-format
 msgid "Plugin %s enabled."
 msgstr "Plugin %s aktiviert."
 
-#: ../../mod/admin.php:726 ../../mod/admin.php:924
+#: ../../mod/admin.php:746 ../../mod/admin.php:944
 msgid "Disable"
 msgstr "Ausschalten"
 
-#: ../../mod/admin.php:728 ../../mod/admin.php:926
+#: ../../mod/admin.php:748 ../../mod/admin.php:946
 msgid "Enable"
 msgstr "Einschalten"
 
-#: ../../mod/admin.php:750 ../../mod/admin.php:955
+#: ../../mod/admin.php:770 ../../mod/admin.php:975
 msgid "Toggle"
 msgstr "Umschalten"
 
-#: ../../mod/admin.php:758 ../../mod/admin.php:965
+#: ../../mod/admin.php:778 ../../mod/admin.php:985
 msgid "Author: "
 msgstr "Autor:"
 
-#: ../../mod/admin.php:759 ../../mod/admin.php:966
+#: ../../mod/admin.php:779 ../../mod/admin.php:986
 msgid "Maintainer: "
 msgstr "Betreuer:"
 
-#: ../../mod/admin.php:888
+#: ../../mod/admin.php:908
 msgid "No themes found."
 msgstr "Keine Themen gefunden."
 
-#: ../../mod/admin.php:947
+#: ../../mod/admin.php:967
 msgid "Screenshot"
 msgstr "Bildschirmfoto"
 
-#: ../../mod/admin.php:995
+#: ../../mod/admin.php:1015
 msgid "[Experimental]"
 msgstr "[Experimentell]"
 
-#: ../../mod/admin.php:996
+#: ../../mod/admin.php:1016
 msgid "[Unsupported]"
 msgstr "[Nicht unterstützt]"
 
-#: ../../mod/admin.php:1023
+#: ../../mod/admin.php:1043
 msgid "Log settings updated."
 msgstr "Protokolleinstellungen aktualisiert."
 
-#: ../../mod/admin.php:1079
+#: ../../mod/admin.php:1099
 msgid "Clear"
 msgstr "löschen"
 
-#: ../../mod/admin.php:1085
+#: ../../mod/admin.php:1105
 msgid "Debugging"
 msgstr "Protokoll führen"
 
-#: ../../mod/admin.php:1086
+#: ../../mod/admin.php:1106
 msgid "Log file"
 msgstr "Protokolldatei"
 
-#: ../../mod/admin.php:1086
+#: ../../mod/admin.php:1106
 msgid ""
 "Must be writable by web server. Relative to your Friendica top-level "
 "directory."
 msgstr "Webserver muss Schreibrechte besitzen. Abhängig vom Friendica-Installationsverzeichnis."
 
-#: ../../mod/admin.php:1087
+#: ../../mod/admin.php:1107
 msgid "Log level"
 msgstr "Protokoll-Level"
 
-#: ../../mod/admin.php:1137
+#: ../../mod/admin.php:1157
 msgid "Close"
 msgstr "Schließen"
 
-#: ../../mod/admin.php:1143
+#: ../../mod/admin.php:1163
 msgid "FTP Host"
 msgstr "FTP Host"
 
-#: ../../mod/admin.php:1144
+#: ../../mod/admin.php:1164
 msgid "FTP Path"
 msgstr "FTP Pfad"
 
-#: ../../mod/admin.php:1145
+#: ../../mod/admin.php:1165
 msgid "FTP User"
 msgstr "FTP Nutzername"
 
-#: ../../mod/admin.php:1146
+#: ../../mod/admin.php:1166
 msgid "FTP Password"
 msgstr "FTP Passwort"
 
-#: ../../mod/profile.php:21 ../../boot.php:966
+#: ../../mod/profile.php:22 ../../boot.php:1065
 msgid "Requested profile is not available."
 msgstr "Das angefragte Profil ist nicht vorhanden."
 
-#: ../../mod/profile.php:141 ../../mod/display.php:75
+#: ../../mod/profile.php:142 ../../mod/display.php:67
 msgid "Access to this profile has been restricted."
 msgstr "Der Zugriff zu diesem Profil wurde eingeschränkt."
 
-#: ../../mod/profile.php:166
+#: ../../mod/profile.php:167
 msgid "Tips for New Members"
 msgstr "Tipps für neue Nutzer"
 
@@ -3713,7 +3944,11 @@ msgstr "Gemeinsame Freunde"
 msgid "No contacts in common."
 msgstr "Keine gemeinsamen Kontakte."
 
-#: ../../mod/display.php:135
+#: ../../mod/share.php:28
+msgid "link"
+msgstr "Link"
+
+#: ../../mod/display.php:128
 msgid "Item has been removed."
 msgstr "Eintrag wurde entfernt."
 
@@ -3725,13 +3960,13 @@ msgstr "Anwendungen"
 msgid "No installed applications."
 msgstr "Keine Applikationen installiert."
 
-#: ../../mod/search.php:83 ../../include/text.php:649
-#: ../../include/text.php:650 ../../include/nav.php:91
+#: ../../mod/search.php:83 ../../include/text.php:678
+#: ../../include/text.php:679 ../../include/nav.php:91
 msgid "Search"
 msgstr "Suche"
 
-#: ../../mod/profiles.php:21 ../../mod/profiles.php:395
-#: ../../mod/profiles.php:509 ../../mod/dfrn_confirm.php:62
+#: ../../mod/profiles.php:21 ../../mod/profiles.php:423
+#: ../../mod/profiles.php:537 ../../mod/dfrn_confirm.php:62
 msgid "Profile not found."
 msgstr "Profil nicht gefunden."
 
@@ -3739,289 +3974,306 @@ msgstr "Profil nicht gefunden."
 msgid "Profile Name is required."
 msgstr "Profilname ist erforderlich."
 
-#: ../../mod/profiles.php:152
+#: ../../mod/profiles.php:160
 msgid "Marital Status"
 msgstr "Familienstand"
 
-#: ../../mod/profiles.php:156
+#: ../../mod/profiles.php:164
 msgid "Romantic Partner"
 msgstr "Romanze"
 
-#: ../../mod/profiles.php:160
+#: ../../mod/profiles.php:168
+msgid "Likes"
+msgstr "Likes"
+
+#: ../../mod/profiles.php:172
+msgid "Dislikes"
+msgstr "Dislikes"
+
+#: ../../mod/profiles.php:176
 msgid "Work/Employment"
 msgstr "Arbeit / Beschäftigung"
 
-#: ../../mod/profiles.php:163
+#: ../../mod/profiles.php:179
 msgid "Religion"
 msgstr "Religion"
 
-#: ../../mod/profiles.php:167
+#: ../../mod/profiles.php:183
 msgid "Political Views"
 msgstr "Politische Ansichten"
 
-#: ../../mod/profiles.php:171
+#: ../../mod/profiles.php:187
 msgid "Gender"
 msgstr "Geschlecht"
 
-#: ../../mod/profiles.php:175
+#: ../../mod/profiles.php:191
 msgid "Sexual Preference"
 msgstr "Sexuelle Vorlieben"
 
-#: ../../mod/profiles.php:179
+#: ../../mod/profiles.php:195
 msgid "Homepage"
 msgstr "Webseite"
 
-#: ../../mod/profiles.php:183
+#: ../../mod/profiles.php:199
 msgid "Interests"
 msgstr "Interessen"
 
-#: ../../mod/profiles.php:187
+#: ../../mod/profiles.php:203
 msgid "Address"
 msgstr "Adresse"
 
-#: ../../mod/profiles.php:194 ../../addon/dav/layout.fnk.php:310
+#: ../../mod/profiles.php:210 ../../addon/dav/common/wdcal_edit.inc.php:183
 msgid "Location"
 msgstr "Wohnort"
 
-#: ../../mod/profiles.php:273
+#: ../../mod/profiles.php:293
 msgid "Profile updated."
 msgstr "Profil aktualisiert."
 
-#: ../../mod/profiles.php:340
+#: ../../mod/profiles.php:360
 msgid " and "
 msgstr " und "
 
-#: ../../mod/profiles.php:348
+#: ../../mod/profiles.php:368
 msgid "public profile"
 msgstr "öffentliches Profil"
 
-#: ../../mod/profiles.php:351
+#: ../../mod/profiles.php:371
 #, php-format
 msgid "%1$s changed %2$s to &ldquo;%3$s&rdquo;"
 msgstr "%1$s hat %2$s geändert auf &ldquo;%3$s&rdquo;"
 
-#: ../../mod/profiles.php:352
+#: ../../mod/profiles.php:372
 #, php-format
 msgid " - Visit %1$s's %2$s"
 msgstr " â€“ %1$ss %2$s besuchen"
 
-#: ../../mod/profiles.php:355
+#: ../../mod/profiles.php:375
 #, php-format
 msgid "%1$s has an updated %2$s, changing %3$s."
 msgstr "%1$s hat folgendes aktualisiert %2$s, verändert wurde %3$s."
 
-#: ../../mod/profiles.php:414
+#: ../../mod/profiles.php:442
 msgid "Profile deleted."
 msgstr "Profil gelöscht."
 
-#: ../../mod/profiles.php:432 ../../mod/profiles.php:466
+#: ../../mod/profiles.php:460 ../../mod/profiles.php:494
 msgid "Profile-"
 msgstr "Profil-"
 
-#: ../../mod/profiles.php:451 ../../mod/profiles.php:493
+#: ../../mod/profiles.php:479 ../../mod/profiles.php:521
 msgid "New profile created."
 msgstr "Neues Profil angelegt."
 
-#: ../../mod/profiles.php:472
+#: ../../mod/profiles.php:500
 msgid "Profile unavailable to clone."
 msgstr "Profil nicht zum Duplizieren verfügbar."
 
-#: ../../mod/profiles.php:530
+#: ../../mod/profiles.php:562
 msgid "Hide your contact/friend list from viewers of this profile?"
 msgstr "Liste der Kontakte vor Betrachtern dieses Profils verbergen?"
 
-#: ../../mod/profiles.php:553
+#: ../../mod/profiles.php:582
 msgid "Edit Profile Details"
 msgstr "Profil bearbeiten"
 
-#: ../../mod/profiles.php:555
+#: ../../mod/profiles.php:584
 msgid "View this profile"
 msgstr "Dieses Profil anzeigen"
 
-#: ../../mod/profiles.php:556
+#: ../../mod/profiles.php:585
 msgid "Create a new profile using these settings"
 msgstr "Neues Profil anlegen und diese Einstellungen verwenden"
 
-#: ../../mod/profiles.php:557
+#: ../../mod/profiles.php:586
 msgid "Clone this profile"
 msgstr "Dieses Profil duplizieren"
 
-#: ../../mod/profiles.php:558
+#: ../../mod/profiles.php:587
 msgid "Delete this profile"
 msgstr "Dieses Profil löschen"
 
-#: ../../mod/profiles.php:559
+#: ../../mod/profiles.php:588
 msgid "Profile Name:"
 msgstr "Profilname:"
 
-#: ../../mod/profiles.php:560
+#: ../../mod/profiles.php:589
 msgid "Your Full Name:"
 msgstr "Dein kompletter Name:"
 
-#: ../../mod/profiles.php:561
+#: ../../mod/profiles.php:590
 msgid "Title/Description:"
 msgstr "Titel/Beschreibung:"
 
-#: ../../mod/profiles.php:562
+#: ../../mod/profiles.php:591
 msgid "Your Gender:"
 msgstr "Dein Geschlecht:"
 
-#: ../../mod/profiles.php:563
+#: ../../mod/profiles.php:592
 #, php-format
 msgid "Birthday (%s):"
 msgstr "Geburtstag (%s):"
 
-#: ../../mod/profiles.php:564
+#: ../../mod/profiles.php:593
 msgid "Street Address:"
 msgstr "Adresse:"
 
-#: ../../mod/profiles.php:565
+#: ../../mod/profiles.php:594
 msgid "Locality/City:"
 msgstr "Wohnort:"
 
-#: ../../mod/profiles.php:566
+#: ../../mod/profiles.php:595
 msgid "Postal/Zip Code:"
 msgstr "Postleitzahl:"
 
-#: ../../mod/profiles.php:567
+#: ../../mod/profiles.php:596
 msgid "Country:"
 msgstr "Land:"
 
-#: ../../mod/profiles.php:568
+#: ../../mod/profiles.php:597
 msgid "Region/State:"
 msgstr "Region/Bundesstaat:"
 
-#: ../../mod/profiles.php:569
+#: ../../mod/profiles.php:598
 msgid "<span class=\"heart\">&hearts;</span> Marital Status:"
 msgstr "<span class=\"heart\">&hearts;</span> Beziehungsstatus:"
 
-#: ../../mod/profiles.php:570
+#: ../../mod/profiles.php:599
 msgid "Who: (if applicable)"
 msgstr "Wer: (falls anwendbar)"
 
-#: ../../mod/profiles.php:571
+#: ../../mod/profiles.php:600
 msgid "Examples: cathy123, Cathy Williams, cathy@example.com"
 msgstr "Beispiele: cathy123, Cathy Williams, cathy@example.com"
 
-#: ../../mod/profiles.php:572
+#: ../../mod/profiles.php:601
 msgid "Since [date]:"
 msgstr "Seit [Datum]:"
 
-#: ../../mod/profiles.php:573 ../../include/profile_advanced.php:46
+#: ../../mod/profiles.php:602 ../../include/profile_advanced.php:46
 msgid "Sexual Preference:"
 msgstr "Sexuelle Vorlieben:"
 
-#: ../../mod/profiles.php:574
+#: ../../mod/profiles.php:603
 msgid "Homepage URL:"
 msgstr "Adresse der Homepage:"
 
-#: ../../mod/profiles.php:575 ../../include/profile_advanced.php:50
+#: ../../mod/profiles.php:604 ../../include/profile_advanced.php:50
 msgid "Hometown:"
 msgstr "Heimatort:"
 
-#: ../../mod/profiles.php:576 ../../include/profile_advanced.php:54
+#: ../../mod/profiles.php:605 ../../include/profile_advanced.php:54
 msgid "Political Views:"
 msgstr "Politische Ansichten:"
 
-#: ../../mod/profiles.php:577
+#: ../../mod/profiles.php:606
 msgid "Religious Views:"
 msgstr "Religiöse Ansichten:"
 
-#: ../../mod/profiles.php:578
+#: ../../mod/profiles.php:607
 msgid "Public Keywords:"
 msgstr "Öffentliche Schlüsselwörter:"
 
-#: ../../mod/profiles.php:579
+#: ../../mod/profiles.php:608
 msgid "Private Keywords:"
 msgstr "Private Schlüsselwörter:"
 
-#: ../../mod/profiles.php:580
+#: ../../mod/profiles.php:609 ../../include/profile_advanced.php:62
+msgid "Likes:"
+msgstr "Likes:"
+
+#: ../../mod/profiles.php:610 ../../include/profile_advanced.php:64
+msgid "Dislikes:"
+msgstr "Dislikes:"
+
+#: ../../mod/profiles.php:611
 msgid "Example: fishing photography software"
 msgstr "Beispiel: Fischen Fotografie Software"
 
-#: ../../mod/profiles.php:581
+#: ../../mod/profiles.php:612
 msgid "(Used for suggesting potential friends, can be seen by others)"
 msgstr "(Wird verwendet, um potentielle Freunde zu finden, könnte von Fremden eingesehen werden)"
 
-#: ../../mod/profiles.php:582
+#: ../../mod/profiles.php:613
 msgid "(Used for searching profiles, never shown to others)"
 msgstr "(Wird für die Suche nach Profilen verwendet und niemals veröffentlicht)"
 
-#: ../../mod/profiles.php:583
+#: ../../mod/profiles.php:614
 msgid "Tell us about yourself..."
 msgstr "Erzähle uns ein bisschen von dir â€¦"
 
-#: ../../mod/profiles.php:584
+#: ../../mod/profiles.php:615
 msgid "Hobbies/Interests"
 msgstr "Hobbies/Interessen"
 
-#: ../../mod/profiles.php:585
+#: ../../mod/profiles.php:616
 msgid "Contact information and Social Networks"
 msgstr "Kontaktinformationen und Soziale Netzwerke"
 
-#: ../../mod/profiles.php:586
+#: ../../mod/profiles.php:617
 msgid "Musical interests"
 msgstr "Musikalische Interessen"
 
-#: ../../mod/profiles.php:587
+#: ../../mod/profiles.php:618
 msgid "Books, literature"
 msgstr "Literatur/Bücher"
 
-#: ../../mod/profiles.php:588
+#: ../../mod/profiles.php:619
 msgid "Television"
 msgstr "Fernsehen"
 
-#: ../../mod/profiles.php:589
+#: ../../mod/profiles.php:620
 msgid "Film/dance/culture/entertainment"
 msgstr "Filme/Tänze/Kultur/Unterhaltung"
 
-#: ../../mod/profiles.php:590
+#: ../../mod/profiles.php:621
 msgid "Love/romance"
 msgstr "Liebesleben"
 
-#: ../../mod/profiles.php:591
+#: ../../mod/profiles.php:622
 msgid "Work/employment"
 msgstr "Arbeit/Beschäftigung"
 
-#: ../../mod/profiles.php:592
+#: ../../mod/profiles.php:623
 msgid "School/education"
 msgstr "Schule/Ausbildung"
 
-#: ../../mod/profiles.php:597
+#: ../../mod/profiles.php:628
 msgid ""
 "This is your <strong>public</strong> profile.<br />It <strong>may</strong> "
 "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:607 ../../mod/directory.php:111
+#: ../../mod/profiles.php:638 ../../mod/directory.php:109
 msgid "Age: "
 msgstr "Alter: "
 
-#: ../../mod/profiles.php:644
+#: ../../mod/profiles.php:677
 msgid "Edit/Manage Profiles"
 msgstr "Verwalte/Editiere Profile"
 
-#: ../../mod/profiles.php:645 ../../boot.php:1075
+#: ../../mod/profiles.php:678 ../../boot.php:1174
 msgid "Change profile photo"
 msgstr "Profilbild Ã¤ndern"
 
-#: ../../mod/profiles.php:646 ../../boot.php:1076
+#: ../../mod/profiles.php:679 ../../boot.php:1175
 msgid "Create New Profile"
 msgstr "Neues Profil anlegen"
 
-#: ../../mod/profiles.php:657 ../../boot.php:1086
+#: ../../mod/profiles.php:690 ../../boot.php:1185
 msgid "Profile Image"
 msgstr "Profilbild"
 
-#: ../../mod/profiles.php:659 ../../boot.php:1089
+#: ../../mod/profiles.php:692 ../../boot.php:1188
 msgid "visible to everybody"
 msgstr "sichtbar für jeden"
 
-#: ../../mod/profiles.php:660 ../../boot.php:1090
+#: ../../mod/profiles.php:693 ../../boot.php:1189
 msgid "Edit visibility"
 msgstr "Sichtbarkeit bearbeiten"
 
-#: ../../mod/filer.php:29 ../../include/conversation.php:947
+#: ../../mod/filer.php:29 ../../include/conversation.php:1105
+#: ../../include/conversation.php:1122
 msgid "Save to Folder:"
 msgstr "In diesen Ordner verschieben:"
 
@@ -4029,7 +4281,7 @@ msgstr "In diesen Ordner verschieben:"
 msgid "- select -"
 msgstr "- auswählen -"
 
-#: ../../mod/tagger.php:103 ../../include/conversation.php:138
+#: ../../mod/tagger.php:103 ../../include/conversation.php:256
 #, 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"
@@ -4069,6 +4321,50 @@ msgstr "Hinzufügen"
 msgid "No entries."
 msgstr "Keine Einträge"
 
+#: ../../mod/babel.php:17
+msgid "Source (bbcode) text:"
+msgstr "Quelle (bbcode) Text:"
+
+#: ../../mod/babel.php:23
+msgid "Source (Diaspora) text to convert to BBcode:"
+msgstr "Eingabe (Diaspora) Nach BBCode zu konvertierender Text:"
+
+#: ../../mod/babel.php:31
+msgid "Source input: "
+msgstr "Originaltext:"
+
+#: ../../mod/babel.php:35
+msgid "bb2html: "
+msgstr "bb2html: "
+
+#: ../../mod/babel.php:39
+msgid "bb2html2bb: "
+msgstr "bb2html2bb: "
+
+#: ../../mod/babel.php:43
+msgid "bb2md: "
+msgstr "bb2md: "
+
+#: ../../mod/babel.php:47
+msgid "bb2md2html: "
+msgstr "bb2md2html: "
+
+#: ../../mod/babel.php:51
+msgid "bb2dia2bb: "
+msgstr "bb2dia2bb: "
+
+#: ../../mod/babel.php:55
+msgid "bb2md2html2bb: "
+msgstr "bb2md2html2bb: "
+
+#: ../../mod/babel.php:65
+msgid "Source input (Diaspora format): "
+msgstr "Texteingabe (Diaspora Format): "
+
+#: ../../mod/babel.php:70
+msgid "diaspora2bb: "
+msgstr "diaspora2bb: "
+
 #: ../../mod/suggest.php:38 ../../view/theme/diabook/theme.php:626
 #: ../../include/contact_widgets.php:34
 msgid "Friend Suggestions"
@@ -4096,11 +4392,30 @@ msgstr "Auf diesem Server suchen"
 msgid "Site Directory"
 msgstr "Verzeichnis"
 
-#: ../../mod/directory.php:114
+#: ../../mod/directory.php:112
 msgid "Gender: "
 msgstr "Geschlecht:"
 
-#: ../../mod/directory.php:140
+#: ../../mod/directory.php:134 ../../include/profile_advanced.php:17
+#: ../../boot.php:1210
+msgid "Gender:"
+msgstr "Geschlecht:"
+
+#: ../../mod/directory.php:136 ../../include/profile_advanced.php:37
+#: ../../boot.php:1213
+msgid "Status:"
+msgstr "Status:"
+
+#: ../../mod/directory.php:138 ../../include/profile_advanced.php:48
+#: ../../boot.php:1215
+msgid "Homepage:"
+msgstr "Homepage:"
+
+#: ../../mod/directory.php:140 ../../include/profile_advanced.php:58
+msgid "About:"
+msgstr "Ãœber:"
+
+#: ../../mod/directory.php:178
 msgid "No entries (some entries may be hidden)."
 msgstr "Keine Einträge (einige Einträge könnten versteckt sein)."
 
@@ -4111,7 +4426,7 @@ msgstr "%s: Keine gültige Email Adresse."
 
 #: ../../mod/invite.php:59
 msgid "Please join us on Friendica"
-msgstr "Bitte trete uns auf Friendica bei"
+msgstr "Bitte trete bei uns auf Friendica bei"
 
 #: ../../mod/invite.php:69
 #, php-format
@@ -4157,7 +4472,7 @@ msgstr "Friendica Server verbinden sich alle untereinander, um ein großes daten
 msgid ""
 "Our apologies. This system is not currently configured to connect with other"
 " public sites or invite members."
-msgstr "Es tut uns Leid. Dieses System ist zurzeit nicht dafür konfiguriert, sich mit anderen Ã¶ffentlichen Seiten zu verbinden oder Mitglieder einzuladen."
+msgstr "Es tut uns leid. Dieses System ist zurzeit nicht dafür konfiguriert, sich mit anderen Ã¶ffentlichen Seiten zu verbinden oder Mitglieder einzuladen."
 
 #: ../../mod/invite.php:111
 msgid "Send invitations"
@@ -4217,14 +4532,14 @@ msgstr "Zeitweiser Fehler. Bitte warte einige Momente und versuche es dann noch
 
 #: ../../mod/dfrn_confirm.php:275
 msgid "Introduction failed or was revoked."
-msgstr "Kontaktanfrage schlug fehl oder wurde zurück gezogen."
+msgstr "Kontaktanfrage schlug fehl oder wurde zurückgezogen."
 
 #: ../../mod/dfrn_confirm.php:420
 msgid "Unable to set contact photo."
 msgstr "Konnte das Bild des Kontakts nicht speichern."
 
-#: ../../mod/dfrn_confirm.php:477 ../../include/diaspora.php:510
-#: ../../include/conversation.php:101
+#: ../../mod/dfrn_confirm.php:477 ../../include/diaspora.php:608
+#: ../../include/conversation.php:162
 #, php-format
 msgid "%1$s is now friends with %2$s"
 msgstr "%1$s ist nun mit %2$s befreundet"
@@ -4236,7 +4551,7 @@ msgstr "Für '%s' wurde kein Nutzer gefunden"
 
 #: ../../mod/dfrn_confirm.php:572
 msgid "Our site encryption key is apparently messed up."
-msgstr "Der Verschlüsselungsschlüssel unserer Seite ist anscheinend im Arsch."
+msgstr "Der Verschlüsselungsschlüssel unserer Seite ist anscheinend nicht in Ordnung."
 
 #: ../../mod/dfrn_confirm.php:583
 msgid "Empty site URL was provided or URL could not be decrypted by us."
@@ -4275,204 +4590,221 @@ msgstr "Auf %s wurde die Verbindung akzeptiert"
 msgid "%1$s has joined %2$s"
 msgstr "%1$s ist %2$s beigetreten"
 
-#: ../../addon/facebook/facebook.php:513
+#: ../../addon/fromgplus/fromgplus.php:29
+msgid "Google+ Import Settings"
+msgstr "Google+ Import Einstellungen"
+
+#: ../../addon/fromgplus/fromgplus.php:32
+msgid "Enable Google+ Import"
+msgstr "Aktiviere Google+ Import"
+
+#: ../../addon/fromgplus/fromgplus.php:35
+msgid "Google Account ID"
+msgstr "Google Account ID"
+
+#: ../../addon/fromgplus/fromgplus.php:55
+msgid "Google+ Import Settings saved."
+msgstr "Google+ Import Einstellungen gespeichert."
+
+#: ../../addon/facebook/facebook.php:523
 msgid "Facebook disabled"
 msgstr "Facebook deaktiviert"
 
-#: ../../addon/facebook/facebook.php:518
+#: ../../addon/facebook/facebook.php:528
 msgid "Updating contacts"
 msgstr "Aktualisiere Kontakte"
 
-#: ../../addon/facebook/facebook.php:541
+#: ../../addon/facebook/facebook.php:551
 msgid "Facebook API key is missing."
 msgstr "Facebook-API-Schlüssel nicht gefunden"
 
-#: ../../addon/facebook/facebook.php:548
+#: ../../addon/facebook/facebook.php:558
 msgid "Facebook Connect"
 msgstr "Mit Facebook verbinden"
 
-#: ../../addon/facebook/facebook.php:554
+#: ../../addon/facebook/facebook.php:564
 msgid "Install Facebook connector for this account."
 msgstr "Facebook-Connector für dieses Konto installieren."
 
-#: ../../addon/facebook/facebook.php:561
+#: ../../addon/facebook/facebook.php:571
 msgid "Remove Facebook connector"
 msgstr "Facebook-Connector entfernen"
 
-#: ../../addon/facebook/facebook.php:566
+#: ../../addon/facebook/facebook.php:576
 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.]"
+msgstr "Neu authentifizieren [Das ist immer dann nötig, wenn du dein Facebook-Passwort geändert hast.]"
 
-#: ../../addon/facebook/facebook.php:573
+#: ../../addon/facebook/facebook.php:583
 msgid "Post to Facebook by default"
 msgstr "Veröffentliche standardmäßig bei Facebook"
 
-#: ../../addon/facebook/facebook.php:579
+#: ../../addon/facebook/facebook.php:589
 msgid ""
 "Facebook friend linking has been disabled on this site. The following "
 "settings will have no effect."
 msgstr "Das Verlinken von Facebookkontakten wurde auf dieser Seite deaktiviert. Die folgenden Einstellungen haben keinen Effekt."
 
-#: ../../addon/facebook/facebook.php:583
+#: ../../addon/facebook/facebook.php:593
 msgid ""
 "Facebook friend linking has been disabled on this site. If you disable it, "
 "you will be unable to re-enable it."
 msgstr "Das Verlinken von Facebookkontakten wurde auf dieser Seite deaktiviert. Wenn du es ausgeschaltet hast, kannst du es nicht wieder aktivieren."
 
-#: ../../addon/facebook/facebook.php:586
+#: ../../addon/facebook/facebook.php:596
 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:588
+#: ../../addon/facebook/facebook.php:598
 msgid ""
 "Facebook conversations consist of your <em>profile wall</em> and your friend"
 " <em>stream</em>."
 msgstr "Facebook-Konversationen bestehen aus deinen Beiträgen auf deiner<em>Pinnwand</em>, sowie den Beiträgen deiner Freunde <em>Stream</em>."
 
-#: ../../addon/facebook/facebook.php:589
+#: ../../addon/facebook/facebook.php:599
 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:590
+#: ../../addon/facebook/facebook.php:600
 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."
+msgstr "Mit den folgenden Einstellungen kannst du die Privatsphäre der Kopie Deiner Facebook-Pinnwand hier auf dieser Seite einstellen."
 
-#: ../../addon/facebook/facebook.php:594
+#: ../../addon/facebook/facebook.php:604
 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:599
+#: ../../addon/facebook/facebook.php:609
 msgid "Do not import your Facebook profile wall conversations"
 msgstr "Facebook-Pinnwand nicht importieren"
 
-#: ../../addon/facebook/facebook.php:601
+#: ../../addon/facebook/facebook.php:611
 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 "
 "website and your privacy settings on this website will be used to determine "
 "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."
+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:606
+#: ../../addon/facebook/facebook.php:616
 msgid "Comma separated applications to ignore"
 msgstr "Kommaseparierte Anwendungen, die ignoriert werden sollen"
 
-#: ../../addon/facebook/facebook.php:690
+#: ../../addon/facebook/facebook.php:700
 msgid "Problems with Facebook Real-Time Updates"
 msgstr "Probleme mit Facebook Echtzeit-Updates"
 
-#: ../../addon/facebook/facebook.php:718
+#: ../../addon/facebook/facebook.php:728
 #: ../../include/contact_selectors.php:81
 msgid "Facebook"
 msgstr "Facebook"
 
-#: ../../addon/facebook/facebook.php:719
+#: ../../addon/facebook/facebook.php:729
 msgid "Facebook Connector Settings"
 msgstr "Facebook-Verbindungseinstellungen"
 
-#: ../../addon/facebook/facebook.php:734
+#: ../../addon/facebook/facebook.php:744
 msgid "Facebook API Key"
 msgstr "Facebook API Schlüssel"
 
-#: ../../addon/facebook/facebook.php:744
+#: ../../addon/facebook/facebook.php:754
 msgid ""
 "Error: it appears that you have specified the App-ID and -Secret in your "
 ".htconfig.php file. As long as they are specified there, they cannot be set "
 "using this form.<br><br>"
 msgstr "Fehler: du scheinst die App-ID und das App-Geheimnis in deiner .htconfig.php Datei angegeben zu haben. Solange sie dort festgelegt werden kannst du dieses Formular hier nicht verwenden.<br><br>"
 
-#: ../../addon/facebook/facebook.php:749
+#: ../../addon/facebook/facebook.php:759
 msgid ""
 "Error: the given API Key seems to be incorrect (the application access token"
 " could not be retrieved)."
 msgstr "Fehler: der angegebene API Schlüssel scheint nicht korrekt zu sein (Zugriffstoken konnte nicht empfangen werden)."
 
-#: ../../addon/facebook/facebook.php:751
+#: ../../addon/facebook/facebook.php:761
 msgid "The given API Key seems to work correctly."
 msgstr "Der angegebene API Schlüssel scheint korrekt zu funktionieren."
 
-#: ../../addon/facebook/facebook.php:753
+#: ../../addon/facebook/facebook.php:763
 msgid ""
-"The correctness of the API Key could not be detected. Somthing strange's "
+"The correctness of the API Key could not be detected. Something strange's "
 "going on."
-msgstr "Die Echtheit des API Schlüssels konnte nicht Ã¼berprüft werden. Etwas Merkwürdiges ist hier im Gange."
+msgstr "Die Richtigkeit des API Schlüssels konnte nicht gefunden werden. Irgendwas stimmt nicht."
 
-#: ../../addon/facebook/facebook.php:756
+#: ../../addon/facebook/facebook.php:766
 msgid "App-ID / API-Key"
 msgstr "App-ID / API-Key"
 
-#: ../../addon/facebook/facebook.php:757
+#: ../../addon/facebook/facebook.php:767
 msgid "Application secret"
 msgstr "Anwendungs-Geheimnis"
 
-#: ../../addon/facebook/facebook.php:758
+#: ../../addon/facebook/facebook.php:768
 #, php-format
 msgid "Polling Interval in minutes (minimum %1$s minutes)"
 msgstr "Abfrageintervall in Minuten (min %1$s Minuten)"
 
-#: ../../addon/facebook/facebook.php:759
+#: ../../addon/facebook/facebook.php:769
 msgid ""
 "Synchronize comments (no comments on Facebook are missed, at the cost of "
 "increased system load)"
 msgstr "Kommentare synchronisieren (Kein Kommentar von Facebook geht verloren, verursacht höhere Last auf dem Server)"
 
-#: ../../addon/facebook/facebook.php:763
+#: ../../addon/facebook/facebook.php:773
 msgid "Real-Time Updates"
 msgstr "Echtzeit Aktualisierungen"
 
-#: ../../addon/facebook/facebook.php:767
+#: ../../addon/facebook/facebook.php:777
 msgid "Real-Time Updates are activated."
 msgstr "Echtzeit-Updates sind aktiviert."
 
-#: ../../addon/facebook/facebook.php:768
+#: ../../addon/facebook/facebook.php:778
 msgid "Deactivate Real-Time Updates"
 msgstr "Echtzeit-Updates deaktivieren"
 
-#: ../../addon/facebook/facebook.php:770
+#: ../../addon/facebook/facebook.php:780
 msgid "Real-Time Updates not activated."
 msgstr "Echtzeit-Updates nicht aktiviert."
 
-#: ../../addon/facebook/facebook.php:770
+#: ../../addon/facebook/facebook.php:780
 msgid "Activate Real-Time Updates"
 msgstr "Echtzeit-Updates aktivieren"
 
-#: ../../addon/facebook/facebook.php:789 ../../addon/dav/layout.fnk.php:360
+#: ../../addon/facebook/facebook.php:799
+#: ../../addon/dav/friendica/layout.fnk.php:361
 msgid "The new values have been saved."
 msgstr "Die neuen Einstellungen wurden gespeichert."
 
-#: ../../addon/facebook/facebook.php:813
+#: ../../addon/facebook/facebook.php:823
 msgid "Post to Facebook"
 msgstr "Bei Facebook veröffentlichen"
 
-#: ../../addon/facebook/facebook.php:911
+#: ../../addon/facebook/facebook.php:921
 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:1131
+#: ../../addon/facebook/facebook.php:1149
 msgid "View on Friendica"
 msgstr "In Friendica betrachten"
 
-#: ../../addon/facebook/facebook.php:1164
+#: ../../addon/facebook/facebook.php:1182
 msgid "Facebook post failed. Queued for retry."
 msgstr "Veröffentlichung bei Facebook gescheitert. Wir versuchen es später erneut."
 
-#: ../../addon/facebook/facebook.php:1204
+#: ../../addon/facebook/facebook.php:1222
 msgid "Your Facebook connection became invalid. Please Re-authenticate."
 msgstr "Deine Facebook Anmeldedaten sind ungültig geworden. Bitte re-authentifiziere dich."
 
-#: ../../addon/facebook/facebook.php:1205
+#: ../../addon/facebook/facebook.php:1223
 msgid "Facebook connection became invalid"
 msgstr "Facebook Anmeldedaten sind ungültig geworden"
 
-#: ../../addon/facebook/facebook.php:1206
+#: ../../addon/facebook/facebook.php:1224
 #, php-format
 msgid ""
 "Hi %1$s,\n"
@@ -4492,23 +4824,35 @@ msgstr "StatusNet AutoFollow Einstellungen"
 msgid "Automatically follow any StatusNet followers/mentioners"
 msgstr "Automatisch allen StatusNet Followern/Erwähnungen folgen"
 
-#: ../../addon/privacy_image_cache/privacy_image_cache.php:182
+#: ../../addon/bg/bg.php:51
+msgid "Bg settings updated."
+msgstr "Bg Einstellungen sind aktualisiert."
+
+#: ../../addon/bg/bg.php:82
+msgid "Bg Settings"
+msgstr "Bg Einstellungen"
+
+#: ../../addon/bg/bg.php:84 ../../addon/numfriends/numfriends.php:79
+msgid "How many contacts to display on profile sidebar"
+msgstr "Wie viele Kontakte sollen in der Seitenleiste angezeigt werden"
+
+#: ../../addon/privacy_image_cache/privacy_image_cache.php:260
 msgid "Lifetime of the cache (in hours)"
 msgstr "Lebenszeit des Caches (in Stunden)"
 
-#: ../../addon/privacy_image_cache/privacy_image_cache.php:187
+#: ../../addon/privacy_image_cache/privacy_image_cache.php:265
 msgid "Cache Statistics"
 msgstr "Cache Statistik"
 
-#: ../../addon/privacy_image_cache/privacy_image_cache.php:190
+#: ../../addon/privacy_image_cache/privacy_image_cache.php:268
 msgid "Number of items"
 msgstr "Anzahl der Einträge"
 
-#: ../../addon/privacy_image_cache/privacy_image_cache.php:192
+#: ../../addon/privacy_image_cache/privacy_image_cache.php:270
 msgid "Size of the cache"
 msgstr "Größe des Caches"
 
-#: ../../addon/privacy_image_cache/privacy_image_cache.php:194
+#: ../../addon/privacy_image_cache/privacy_image_cache.php:272
 msgid "Delete the whole cache"
 msgstr "Cache leeren"
 
@@ -4517,7 +4861,7 @@ msgstr "Cache leeren"
 msgid "%d person likes this"
 msgid_plural "%d people like this"
 msgstr[0] "%d Person mag das"
-msgstr[1] "%d Leuten mögen das"
+msgstr[1] "%d Leute mögen das"
 
 #: ../../addon/widgets/widget_like.php:61
 #, php-format
@@ -4546,6 +4890,157 @@ msgstr "Verfügbare Widgets"
 msgid "Connect on Friendica!"
 msgstr "In Friendica verbinden!"
 
+#: ../../addon/morepokes/morepokes.php:19
+msgid "bitchslap"
+msgstr "abwatschen"
+
+#: ../../addon/morepokes/morepokes.php:19
+msgid "bitchslapped"
+msgstr "watschte"
+
+#: ../../addon/morepokes/morepokes.php:20
+msgid "shag"
+msgstr "poppen"
+
+#: ../../addon/morepokes/morepokes.php:20
+msgid "shagged"
+msgstr "poppte"
+
+#: ../../addon/morepokes/morepokes.php:21
+msgid "do something obscenely biological to"
+msgstr "mit ihm/ihr etwas obszönes Körperliches machen"
+
+#: ../../addon/morepokes/morepokes.php:21
+msgid "did something obscenely biological to"
+msgstr "machte etwas obszönes Körperliches mit"
+
+#: ../../addon/morepokes/morepokes.php:22
+msgid "point out the new poke feature to"
+msgstr "die neue Anstups-Funktion zeigen"
+
+#: ../../addon/morepokes/morepokes.php:22
+msgid "pointed out the new poke feature to"
+msgstr "zeigte die neue Anstups-Funktion"
+
+#: ../../addon/morepokes/morepokes.php:23
+msgid "declare undying love for"
+msgstr "unterbliche Liebe verkünden"
+
+#: ../../addon/morepokes/morepokes.php:23
+msgid "declared undying love for"
+msgstr "verkündete unsterbliche Liebe für"
+
+#: ../../addon/morepokes/morepokes.php:24
+msgid "set fire to"
+msgstr ""
+
+#: ../../addon/morepokes/morepokes.php:25
+msgid "patent"
+msgstr "patentieren"
+
+#: ../../addon/morepokes/morepokes.php:25
+msgid "patented"
+msgstr "patentierte"
+
+#: ../../addon/morepokes/morepokes.php:26
+msgid "stroke beard"
+msgstr "sich den Bart kratzen"
+
+#: ../../addon/morepokes/morepokes.php:26
+msgid "stroked their beard at"
+msgstr "kratzte sich den Bart in Richtung"
+
+#: ../../addon/morepokes/morepokes.php:27
+msgid ""
+"bemoan the declining standards of modern secondary and tertiary education to"
+msgstr "sich Ã¼ber die sinkenden Standards der Schul- und Hochschulbildung beklagen"
+
+#: ../../addon/morepokes/morepokes.php:27
+msgid ""
+"bemoans the declining standards of modern secondary and tertiary education "
+"to"
+msgstr "beklagte sich Ã¼ber die sinkenden Standards der Schul- und Hochschulbildung bei"
+
+#: ../../addon/morepokes/morepokes.php:28
+msgid "hug"
+msgstr "umarmen"
+
+#: ../../addon/morepokes/morepokes.php:28
+msgid "hugged"
+msgstr "umarmte"
+
+#: ../../addon/morepokes/morepokes.php:29
+msgid "kiss"
+msgstr "küssen"
+
+#: ../../addon/morepokes/morepokes.php:29
+msgid "kissed"
+msgstr "küsste"
+
+#: ../../addon/morepokes/morepokes.php:30
+msgid "raise eyebrows at"
+msgstr "Augenbrauen hochziehen"
+
+#: ../../addon/morepokes/morepokes.php:30
+msgid "raised their eyebrows at"
+msgstr "zog die Augenbrauen hoch in Richtung"
+
+#: ../../addon/morepokes/morepokes.php:31
+msgid "insult"
+msgstr "beleidigen"
+
+#: ../../addon/morepokes/morepokes.php:31
+msgid "insulted"
+msgstr "beleidigte"
+
+#: ../../addon/morepokes/morepokes.php:32
+msgid "praise"
+msgstr "preisen"
+
+#: ../../addon/morepokes/morepokes.php:32
+msgid "praised"
+msgstr "pries"
+
+#: ../../addon/morepokes/morepokes.php:33
+msgid "be dubious of"
+msgstr "ungewiss sein"
+
+#: ../../addon/morepokes/morepokes.php:33
+msgid "was dubious of"
+msgstr "war ungewiss Ã¼ber"
+
+#: ../../addon/morepokes/morepokes.php:34
+msgid "eat"
+msgstr "essen"
+
+#: ../../addon/morepokes/morepokes.php:34
+msgid "ate"
+msgstr "aß"
+
+#: ../../addon/morepokes/morepokes.php:35
+msgid "giggle and fawn at"
+msgstr "kichern und einschleimen"
+
+#: ../../addon/morepokes/morepokes.php:35
+msgid "giggled and fawned at"
+msgstr "kicherte und schleimte sich ein bei"
+
+#: ../../addon/morepokes/morepokes.php:36
+msgid "doubt"
+msgstr "bezweifeln"
+
+#: ../../addon/morepokes/morepokes.php:36
+msgid "doubted"
+msgstr "bezweifelte"
+
+#: ../../addon/morepokes/morepokes.php:37
+msgid "glare"
+msgstr "zornig anstarren"
+
+#: ../../addon/morepokes/morepokes.php:37
+msgid "glared at"
+msgstr "starrte zornig auf"
+
 #: ../../addon/yourls/yourls.php:55
 msgid "YourLS Settings"
 msgstr "YourLS Einstellungen"
@@ -4629,15 +5124,34 @@ msgstr "NSFW-Einstellungen gespeichert"
 msgid "%s - Click to open/close"
 msgstr "%s â€“ Zum Ã–ffnen/Schließen klicken"
 
-#: ../../addon/page/page.php:48
+#: ../../addon/page/page.php:61 ../../addon/page/page.php:91
+#: ../../addon/forumlist/forumlist.php:54
 msgid "Forums"
 msgstr "Foren"
 
-#: ../../addon/page/page.php:63 ../../addon/showmore/showmore.php:87
-#: ../../include/contact_widgets.php:188 ../../include/conversation.php:476
-#: ../../boot.php:524
-msgid "show more"
-msgstr "mehr anzeigen"
+#: ../../addon/page/page.php:129 ../../addon/forumlist/forumlist.php:88
+msgid "Forums:"
+msgstr "Foren:"
+
+#: ../../addon/page/page.php:165
+msgid "Page settings updated."
+msgstr "Seiteneinstellungen aktualisiert."
+
+#: ../../addon/page/page.php:194
+msgid "Page Settings"
+msgstr "Seiteneinstellungen"
+
+#: ../../addon/page/page.php:196 ../../addon/forumlist/forumlist.php:155
+msgid "How many forums to display on sidebar without paging"
+msgstr "Wie viele Foren sollen in der Seitenleiste ohne Umblättern angezeigt werden"
+
+#: ../../addon/page/page.php:199
+msgid "Randomise Page/Forum list"
+msgstr "Zufällige Seiten/Foren Liste"
+
+#: ../../addon/page/page.php:202
+msgid "Show pages/forums on profile page"
+msgstr "Foren/Seiten auf der Profilseite anzeigen"
 
 #: ../../addon/planets/planets.php:150
 msgid "Planets Settings"
@@ -4651,7 +5165,7 @@ msgstr "Aktiviere Planeten Plugin"
 #: ../../addon/communityhome/communityhome.php:34
 #: ../../addon/communityhome/twillingham/communityhome.php:28
 #: ../../addon/communityhome/twillingham/communityhome.php:34
-#: ../../include/nav.php:64 ../../boot.php:822
+#: ../../include/nav.php:64 ../../boot.php:921
 msgid "Login"
 msgstr "Anmeldung"
 
@@ -4679,208 +5193,553 @@ msgid "Latest likes"
 msgstr "Neueste Favoriten"
 
 #: ../../addon/communityhome/communityhome.php:155
-#: ../../view/theme/diabook/theme.php:562 ../../include/text.php:1314
-#: ../../include/conversation.php:45 ../../include/conversation.php:118
+#: ../../view/theme/diabook/theme.php:562 ../../include/text.php:1397
+#: ../../include/conversation.php:106 ../../include/conversation.php:236
 msgid "event"
 msgstr "Veranstaltung"
 
-#: ../../addon/dav/common/wdcal_configuration.php:126
+#: ../../addon/dav/common/wdcal_backend.inc.php:92
+#: ../../addon/dav/common/wdcal_backend.inc.php:166
+#: ../../addon/dav/common/wdcal_backend.inc.php:178
+#: ../../addon/dav/common/wdcal_backend.inc.php:206
+#: ../../addon/dav/common/wdcal_backend.inc.php:214
+#: ../../addon/dav/common/wdcal_backend.inc.php:229
+msgid "No access"
+msgstr "Kein Zugriff"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:30
+#: ../../addon/dav/common/wdcal_edit.inc.php:738
+msgid "Could not open component for editing"
+msgstr "Kalender-Editierfunktion konnte nicht geöffnet werden"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:140
+#: ../../addon/dav/friendica/layout.fnk.php:143
+#: ../../addon/dav/friendica/layout.fnk.php:422
+msgid "Go back to the calendar"
+msgstr "Zurück zum Kalender"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:144
+msgid "Event data"
+msgstr "Veranstaltungsdetails"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:146
+#: ../../addon/dav/friendica/main.php:239
+msgid "Calendar"
+msgstr "Kalender"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:163
+msgid "Special color"
+msgstr "Spezielle Farbe"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:169
+msgid "Subject"
+msgstr "Betreff:"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:173
+msgid "Starts"
+msgstr "Beginnt"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:178
+msgid "Ends"
+msgstr "Endet"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:185
+msgid "Description"
+msgstr "Beschreibung"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:188
+msgid "Recurrence"
+msgstr "Wiederholungen:"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:190
+msgid "Frequency"
+msgstr "Frequenz"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:194
+#: ../../include/contact_selectors.php:59
+msgid "Daily"
+msgstr "Täglich"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:197
+#: ../../include/contact_selectors.php:60
+msgid "Weekly"
+msgstr "Wöchentlich"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:200
+#: ../../include/contact_selectors.php:61
+msgid "Monthly"
+msgstr "Monatlich"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:203
+msgid "Yearly"
+msgstr "Jährlich"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:214
+#: ../../include/datetime.php:288
+msgid "days"
+msgstr "Tage"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:215
+#: ../../include/datetime.php:287
+msgid "weeks"
+msgstr "Wochen"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:216
+#: ../../include/datetime.php:286
+msgid "months"
+msgstr "Monate"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:217
+#: ../../include/datetime.php:285
+msgid "years"
+msgstr "Jahre"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:218
+msgid "Interval"
+msgstr "Intervall"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:218
+msgid "All %select% %time%"
+msgstr "Jeden %select% %time%"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:222
+#: ../../addon/dav/common/wdcal_edit.inc.php:260
+#: ../../addon/dav/common/wdcal_edit.inc.php:481
+msgid "Days"
+msgstr "Tage"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:231
+#: ../../addon/dav/common/wdcal_edit.inc.php:254
+#: ../../addon/dav/common/wdcal_edit.inc.php:270
+#: ../../addon/dav/common/wdcal_edit.inc.php:293
+#: ../../addon/dav/common/wdcal_edit.inc.php:305 ../../include/text.php:917
+msgid "Sunday"
+msgstr "Sonntag"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:235
+#: ../../addon/dav/common/wdcal_edit.inc.php:274
+#: ../../addon/dav/common/wdcal_edit.inc.php:308 ../../include/text.php:917
+msgid "Monday"
+msgstr "Montag"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:238
+#: ../../addon/dav/common/wdcal_edit.inc.php:277 ../../include/text.php:917
+msgid "Tuesday"
+msgstr "Dienstag"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:241
+#: ../../addon/dav/common/wdcal_edit.inc.php:280 ../../include/text.php:917
+msgid "Wednesday"
+msgstr "Mittwoch"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:244
+#: ../../addon/dav/common/wdcal_edit.inc.php:283 ../../include/text.php:917
+msgid "Thursday"
+msgstr "Donnerstag"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:247
+#: ../../addon/dav/common/wdcal_edit.inc.php:286 ../../include/text.php:917
+msgid "Friday"
+msgstr "Freitag"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:250
+#: ../../addon/dav/common/wdcal_edit.inc.php:289 ../../include/text.php:917
+msgid "Saturday"
+msgstr "Samstag"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:297
+msgid "First day of week:"
+msgstr "Erster Tag der Woche"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:350
+#: ../../addon/dav/common/wdcal_edit.inc.php:373
+msgid "Day of month"
+msgstr "Tag des Monats"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:354
+msgid "#num#th of each month"
+msgstr "#num#ten jedes Monats"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:357
+msgid "#num#th-last of each month"
+msgstr "letzten #num#ten jedes Monats"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:360
+msgid "#num#th #wkday# of each month"
+msgstr "jeden #num#ten #wkday# eines Monats"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:363
+msgid "#num#th-last #wkday# of each month"
+msgstr "jeden #num#ten letzten #wkday# eines Monats"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:372
+#: ../../addon/dav/friendica/layout.fnk.php:255
+msgid "Month"
+msgstr "Monat"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:377
+msgid "#num#th of the given month"
+msgstr "#num#ten des Monats"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:380
+msgid "#num#th-last of the given month"
+msgstr "letzten #num#ten des Monats"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:383
+msgid "#num#th #wkday# of the given month"
+msgstr "jeden #num#ten eines Monats"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:386
+msgid "#num#th-last #wkday# of the given month"
+msgstr "jeden #num#ten letzten eines Monats"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:413
+msgid "Repeat until"
+msgstr "Wiederholungen"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:417
+msgid "Infinite"
+msgstr "unendlich"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:420
+msgid "Until the following date"
+msgstr "bis zum folgenden Datum"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:423
+msgid "Number of times"
+msgstr "Bestimmte Anzahl von Wiederholungen"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:429
+msgid "Exceptions"
+msgstr "Ausnahmen"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:432
+msgid "none"
+msgstr "keine"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:449
+msgid "Notification"
+msgstr "Benachrichtigung"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:466
+msgid "Notify by"
+msgstr "Benarchrichtigungsmethode"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:469
+msgid "E-Mail"
+msgstr "E-Mail"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:470
+msgid "On Friendica / Display"
+msgstr "Bei Friendica / Anzeige"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:474
+msgid "Time"
+msgstr "Zeit"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:478
+msgid "Hours"
+msgstr "Stunden"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:479
+msgid "Minutes"
+msgstr "Minuten"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:480
+msgid "Seconds"
+msgstr "Sekunden"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:482
+msgid "Weeks"
+msgstr "Wochen"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:485
+msgid "before the"
+msgstr "vor dem"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:486
+msgid "start of the event"
+msgstr "Beginn des Termins"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:487
+msgid "end of the event"
+msgstr "Ende des Termins"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:492
+msgid "Add a notification"
+msgstr "Benachrichtigung hinzufügen"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:687
+msgid "The event #name# will start at #date"
+msgstr "Der Termin #name# wird am #date anfangen"
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:696
+msgid "#name# is about to begin."
+msgstr "#name# beginnt demnächst."
+
+#: ../../addon/dav/common/wdcal_edit.inc.php:769
+msgid "Saved"
+msgstr "Gespeichert"
+
+#: ../../addon/dav/common/wdcal_configuration.php:148
 msgid "U.S. Time Format (mm/dd/YYYY)"
 msgstr "U.S. Datumsformat (mm/dd/YYYY)"
 
-#: ../../addon/dav/common/wdcal_configuration.php:205
+#: ../../addon/dav/common/wdcal_configuration.php:243
 msgid "German Time Format (dd.mm.YYYY)"
 msgstr "Deutsches Datumsformat (dd.mm.YYYY)"
 
-#: ../../addon/dav/common/calendar.fnk.php:517
-#: ../../addon/dav/common/calendar.fnk.php:533
-#: ../../addon/dav/layout.fnk.php:200
-msgid "Error"
-msgstr "Fehler"
+#: ../../addon/dav/common/dav_caldav_backend_private.inc.php:39
+msgid "Private Events"
+msgstr "Privater Termin"
 
-#: ../../addon/dav/common/calendar.fnk.php:568
-#: ../../addon/dav/common/calendar.fnk.php:637
-#: ../../addon/dav/common/calendar.fnk.php:664
-#: ../../addon/dav/layout.fnk.php:231
-msgid "No access"
-msgstr "Kein Zugriff"
+#: ../../addon/dav/common/dav_carddav_backend_private.inc.php:46
+msgid "Private Addressbooks"
+msgstr "Private Adressbücher"
+
+#: ../../addon/dav/friendica/dav_caldav_backend_virtual_friendica.inc.php:36
+msgid "Friendica-Native events"
+msgstr "Friendica Veranstaltungen"
+
+#: ../../addon/dav/friendica/dav_carddav_backend_virtual_friendica.inc.php:36
+#: ../../addon/dav/friendica/dav_carddav_backend_virtual_friendica.inc.php:59
+msgid "Friendica-Contacts"
+msgstr "Friendica-Kontakte"
+
+#: ../../addon/dav/friendica/dav_carddav_backend_virtual_friendica.inc.php:60
+msgid "Your Friendica-Contacts"
+msgstr "Deine Friendica-Kontakte"
+
+#: ../../addon/dav/friendica/layout.fnk.php:99
+#: ../../addon/dav/friendica/layout.fnk.php:136
+msgid ""
+"Something went wrong when trying to import the file. Sorry. Maybe some "
+"events were imported anyway."
+msgstr "Entschuldigung. Bei dem Versuch die Datei zu importieren ist etwas schief gelaufen. Vielleicht wurden aber einige der Termine dennoch importiert."
+
+#: ../../addon/dav/friendica/layout.fnk.php:131
+msgid "Something went wrong when trying to import the file. Sorry."
+msgstr "Entschuldigung. Beim Importieren der Datei ist etwas schief gelaufen."
+
+#: ../../addon/dav/friendica/layout.fnk.php:134
+msgid "The ICS-File has been imported."
+msgstr "Die ICS-Datei wurde importoert."
+
+#: ../../addon/dav/friendica/layout.fnk.php:138
+msgid "No file was uploaded."
+msgstr "Es wurde keine Datei geladen."
+
+#: ../../addon/dav/friendica/layout.fnk.php:147
+msgid "Import a ICS-file"
+msgstr "Importiere eine ICS-Datei"
+
+#: ../../addon/dav/friendica/layout.fnk.php:150
+msgid "ICS-File"
+msgstr "ICS-Datei"
+
+#: ../../addon/dav/friendica/layout.fnk.php:151
+msgid "Overwrite all #num# existing events"
+msgstr "Ãœberschreibe alle #num# existierenden Einträge"
 
-#: ../../addon/dav/layout.fnk.php:119
+#: ../../addon/dav/friendica/layout.fnk.php:228
 msgid "New event"
 msgstr "Neue Veranstaltung"
 
-#: ../../addon/dav/layout.fnk.php:123
+#: ../../addon/dav/friendica/layout.fnk.php:232
 msgid "Today"
 msgstr "Heute"
 
-#: ../../addon/dav/layout.fnk.php:132
+#: ../../addon/dav/friendica/layout.fnk.php:241
 msgid "Day"
 msgstr "Tag"
 
-#: ../../addon/dav/layout.fnk.php:139
+#: ../../addon/dav/friendica/layout.fnk.php:248
 msgid "Week"
 msgstr "Woche"
 
-#: ../../addon/dav/layout.fnk.php:146
-msgid "Month"
-msgstr "Monat"
-
-#: ../../addon/dav/layout.fnk.php:151
+#: ../../addon/dav/friendica/layout.fnk.php:260
 msgid "Reload"
 msgstr "Neu Laden"
 
-#: ../../addon/dav/layout.fnk.php:162
+#: ../../addon/dav/friendica/layout.fnk.php:271
 msgid "Date"
 msgstr "Datum"
 
-#: ../../addon/dav/layout.fnk.php:224
-msgid "Not found"
-msgstr "Nicht gefunden"
-
-#: ../../addon/dav/layout.fnk.php:292 ../../addon/dav/layout.fnk.php:365
-msgid "Go back to the calendar"
-msgstr "Zurück zum Kalender"
-
-#: ../../addon/dav/layout.fnk.php:300
-msgid "Starts"
-msgstr "Beginnt"
-
-#: ../../addon/dav/layout.fnk.php:305
-msgid "Ends"
-msgstr "Endet"
-
-#: ../../addon/dav/layout.fnk.php:312
-msgid "Description"
-msgstr "Beschreibung"
-
-#: ../../addon/dav/layout.fnk.php:315
-msgid "Notification"
-msgstr "Benachrichtigung"
-
-#: ../../addon/dav/layout.fnk.php:324
-msgid "Minutes"
-msgstr "Minuten"
+#: ../../addon/dav/friendica/layout.fnk.php:313
+msgid "Error"
+msgstr "Fehler"
 
-#: ../../addon/dav/layout.fnk.php:327
-msgid "Hours"
-msgstr "Stunden"
+#: ../../addon/dav/friendica/layout.fnk.php:380
+msgid "The calendar has been updated."
+msgstr "Der Kalender wurde aktualisiert."
 
-#: ../../addon/dav/layout.fnk.php:330
-msgid "Days"
-msgstr "Tage"
+#: ../../addon/dav/friendica/layout.fnk.php:393
+msgid "The new calendar has been created."
+msgstr "Der neue Kalender wurde erstellt."
 
-#: ../../addon/dav/layout.fnk.php:331
-msgid "before"
-msgstr "vorher"
+#: ../../addon/dav/friendica/layout.fnk.php:417
+msgid "The calendar has been deleted."
+msgstr "Der Kalender wurde gelöscht."
 
-#: ../../addon/dav/layout.fnk.php:367
+#: ../../addon/dav/friendica/layout.fnk.php:424
 msgid "Calendar Settings"
-msgstr "Kalender Einstellungen"
+msgstr "Kalendereinstellungen"
 
-#: ../../addon/dav/layout.fnk.php:373
+#: ../../addon/dav/friendica/layout.fnk.php:430
 msgid "Date format"
 msgstr "Datumsformat"
 
-#: ../../addon/dav/layout.fnk.php:382
+#: ../../addon/dav/friendica/layout.fnk.php:439
 msgid "Time zone"
 msgstr "Zeitzone"
 
-#: ../../addon/dav/layout.fnk.php:387
+#: ../../addon/dav/friendica/layout.fnk.php:445
+msgid "Calendars"
+msgstr "Kalender"
+
+#: ../../addon/dav/friendica/layout.fnk.php:487
+msgid "Create a new calendar"
+msgstr "Neuen Kalender anlegen"
+
+#: ../../addon/dav/friendica/layout.fnk.php:496
 msgid "Limitations"
 msgstr "Einschränkungen"
 
-#: ../../addon/dav/layout.fnk.php:391
+#: ../../addon/dav/friendica/layout.fnk.php:500
+#: ../../addon/libravatar/libravatar.php:82
 msgid "Warning"
 msgstr "Warnung"
 
-#: ../../addon/dav/layout.fnk.php:395
+#: ../../addon/dav/friendica/layout.fnk.php:504
 msgid "Synchronization (iPhone, Thunderbird Lightning, Android, ...)"
 msgstr "Synchronisation (iPhone, Thunderbird Lightning, Android, ...)"
 
-#: ../../addon/dav/layout.fnk.php:402
+#: ../../addon/dav/friendica/layout.fnk.php:511
 msgid "Synchronizing this calendar with the iPhone"
 msgstr "Diesen Kalender mit dem iPhone synchronisieren"
 
-#: ../../addon/dav/layout.fnk.php:413
+#: ../../addon/dav/friendica/layout.fnk.php:522
 msgid "Synchronizing your Friendica-Contacts with the iPhone"
 msgstr "Friendica-Kontakte mit dem iPhone synchronisieren"
 
-#: ../../addon/dav/dav_carddav_backend_friendica_community.inc.php:37
-msgid "Friendica-Contacts"
-msgstr "Friendica-Kontakte"
-
-#: ../../addon/dav/dav_carddav_backend_friendica_community.inc.php:38
-msgid "Your Friendica-Contacts"
-msgstr "Deine Friendica-Kontakte"
-
-#: ../../addon/dav/main.php:244
-msgid "Calendar"
-msgstr "Kalender"
+#: ../../addon/dav/friendica/main.php:202
+msgid ""
+"The current version of this plugin has not been set up correctly. Please "
+"contact the system administrator of your installation of friendica to fix "
+"this."
+msgstr "Die aktuelle Version dieses Plugins wurde nicht korrekt eingestellt. Bitte kontaktiere den System-Administrator deiner Friendica Installation um den Fehler zu beheben."
 
-#: ../../addon/dav/main.php:247
+#: ../../addon/dav/friendica/main.php:242
 msgid "Extended calendar with CalDAV-support"
 msgstr "Erweiterter Kalender mit CalDAV Unterstützung."
 
-#: ../../addon/dav/main.php:263
+#: ../../addon/dav/friendica/main.php:279
+#: ../../addon/dav/friendica/main.php:280 ../../include/delivery.php:463
+#: ../../include/enotify.php:28 ../../include/notifier.php:710
+msgid "noreply"
+msgstr "noreply"
+
+#: ../../addon/dav/friendica/main.php:282
+msgid "Notification: "
+msgstr "Benachrichtigungen: "
+
+#: ../../addon/dav/friendica/main.php:309
 msgid "The database tables have been installed."
-msgstr "Die Datenbank-Tabellen wurden installiert."
+msgstr "Die Datenbanktabellen wurden installiert."
 
-#: ../../addon/dav/main.php:264
+#: ../../addon/dav/friendica/main.php:310
 msgid "An error occurred during the installation."
 msgstr "Während der Installation trat ein Fehler auf."
 
-#: ../../addon/dav/main.php:280
+#: ../../addon/dav/friendica/main.php:316
+msgid "The database tables have been updated."
+msgstr "Die Tabellen in der Datenbank wurden aktualisiert."
+
+#: ../../addon/dav/friendica/main.php:317
+msgid "An error occurred during the update."
+msgstr "Während der Aktualisierung trat ein Fehler auf."
+
+#: ../../addon/dav/friendica/main.php:333
 msgid "No system-wide settings yet."
 msgstr "Momentan keine systemweiten Einstellungen."
 
-#: ../../addon/dav/main.php:283
+#: ../../addon/dav/friendica/main.php:336
 msgid "Database status"
-msgstr "Datenbank Status"
+msgstr "Datenbankstatus"
 
-#: ../../addon/dav/main.php:286
+#: ../../addon/dav/friendica/main.php:339
 msgid "Installed"
 msgstr "Installiert"
 
-#: ../../addon/dav/main.php:289
+#: ../../addon/dav/friendica/main.php:343
 msgid "Upgrade needed"
 msgstr "Upgrade erforderlich"
 
-#: ../../addon/dav/main.php:289
+#: ../../addon/dav/friendica/main.php:343
+msgid ""
+"Please back up all calendar data (the tables beginning with dav_*) before "
+"proceeding. While all calendar events <i>should</i> be converted to the new "
+"database structure, it's always safe to have a backup. Below, you can have a"
+" look at the database-queries that will be made when pressing the "
+"'update'-button."
+msgstr "Bitte sichere alle Kalenderdaten (die Tabellen mit dav_* beginnend) bevor du mit dem Update fortfährst. Eigentliche <i>sollten</i> alle Kalendereinträge in die neue Datenbankstruktur Ã¼bernommen werden, aber sicher ist sicher. Weiter unten kannst du die Datenbank-Anfragen ansehen, die im Verlauf des Updates gemacht werden."
+
+#: ../../addon/dav/friendica/main.php:343
 msgid "Upgrade"
 msgstr "Upgrade"
 
-#: ../../addon/dav/main.php:292
+#: ../../addon/dav/friendica/main.php:346
 msgid "Not installed"
 msgstr "Nicht installiert"
 
-#: ../../addon/dav/main.php:292
+#: ../../addon/dav/friendica/main.php:346
 msgid "Install"
 msgstr "Installieren"
 
-#: ../../addon/dav/main.php:297
+#: ../../addon/dav/friendica/main.php:350
+msgid "Unknown"
+msgstr "Unbekannt"
+
+#: ../../addon/dav/friendica/main.php:350
+msgid ""
+"Something really went wrong. I cannot recover from this state automatically,"
+" sorry. Please go to the database backend, back up the data, and delete all "
+"tables beginning with 'dav_' manually. Afterwards, this installation routine"
+" should be able to reinitialize the tables automatically."
+msgstr "Irgendetwas ging schief. Ich kann leider von diesem Zustand der Datenbank leider nicht automatisch fortfahren. Bitte mache ein Backup der Daten aus der Datenbank und lösche anschließend alle Tabellen deren Name mit 'dav_' anfangen. Anschließend sollte diese Installations-Routine in der Lage sein die nötigen Tabellen automatisch neu anzulegen."
+
+#: ../../addon/dav/friendica/main.php:355
 msgid "Troubleshooting"
 msgstr "Problembehebung"
 
-#: ../../addon/dav/main.php:298
+#: ../../addon/dav/friendica/main.php:356
 msgid "Manual creation of the database tables:"
-msgstr "Manuelles anlegen der Datenbank Tabellen:"
+msgstr "Manuelles Anlegen der Datenbanktabellen:"
 
-#: ../../addon/dav/main.php:299
+#: ../../addon/dav/friendica/main.php:357
 msgid "Show SQL-statements"
 msgstr "SQL-Anweisungen anzeigen"
 
-#: ../../addon/dav/calendar.friendica.fnk.php:151
+#: ../../addon/dav/friendica/calendar.friendica.fnk.php:206
 msgid "Private Calendar"
 msgstr "Privater Kalender"
 
-#: ../../addon/dav/calendar.friendica.fnk.php:158
+#: ../../addon/dav/friendica/calendar.friendica.fnk.php:207
 msgid "Friendica Events: Mine"
 msgstr "Meine Friendica-Veranstaltungen"
 
-#: ../../addon/dav/calendar.friendica.fnk.php:161
+#: ../../addon/dav/friendica/calendar.friendica.fnk.php:208
 msgid "Friendica Events: Contacts"
 msgstr "Friendica Veranstaltungen meiner Kontakte"
 
+#: ../../addon/dav/friendica/calendar.friendica.fnk.php:248
+msgid "Private Addresses"
+msgstr "Private Adressen"
+
+#: ../../addon/dav/friendica/calendar.friendica.fnk.php:249
+msgid "Friendica Contacts"
+msgstr "Friendica Kontakte"
+
 #: ../../addon/uhremotestorage/uhremotestorage.php:84
 #, php-format
 msgid ""
@@ -4888,7 +5747,7 @@ msgid ""
 " storage (like ownCloud). See <a "
 "href=\"http://www.w3.org/community/unhosted/wiki/RemoteStorage#WebFinger\">RemoteStorage"
 " WebFinger</a>"
-msgstr "Ermöglicht dir, deine friendica id (%s) mit externen unhosted-fähigen Speichern (z.B. ownCloud) zu verbinden. Siehe <a href=\"http://www.w3.org/community/unhosted/wiki/RemoteStorage#WebFinger\">RemoteStorage WebFinger</a>"
+msgstr "Ermöglicht dir, deine Friendica ID (%s) mit externen unhosted-fähigen Speichern (z.B. ownCloud) zu verbinden. Siehe <a href=\"http://www.w3.org/community/unhosted/wiki/RemoteStorage#WebFinger\">RemoteStorage WebFinger</a>"
 
 #: ../../addon/uhremotestorage/uhremotestorage.php:85
 msgid "Template URL (with {category})"
@@ -4896,7 +5755,7 @@ msgstr "Vorlagen URL (mit {Kategorie})"
 
 #: ../../addon/uhremotestorage/uhremotestorage.php:86
 msgid "OAuth end-point"
-msgstr "OAuth end-point"
+msgstr "OAuth Endpunkt"
 
 #: ../../addon/uhremotestorage/uhremotestorage.php:87
 msgid "Api"
@@ -5028,7 +5887,7 @@ msgstr "Drupal Seite verwendet bereinigte URLs"
 msgid "Post to Drupal by default"
 msgstr "Veröffentliche Ã¶ffentliche Beiträge standardmäßig bei Drupal"
 
-#: ../../addon/drpost/drpost.php:184 ../../addon/wppost/wppost.php:199
+#: ../../addon/drpost/drpost.php:184 ../../addon/wppost/wppost.php:201
 #: ../../addon/blogger/blogger.php:172 ../../addon/posterous/posterous.php:189
 msgid "Post from Friendica"
 msgstr "Beitrag via Friendica"
@@ -5115,6 +5974,30 @@ msgstr "OEmbed für Youtube Videos verwenden"
 msgid "URL to embed:"
 msgstr "URL zum Einbetten:"
 
+#: ../../addon/forumlist/forumlist.php:57
+msgid "show/hide"
+msgstr "anzeigen/verbergen"
+
+#: ../../addon/forumlist/forumlist.php:72
+msgid "No forum subscriptions"
+msgstr "Keine Foren-Mitgliedschaften."
+
+#: ../../addon/forumlist/forumlist.php:124
+msgid "Forumlist settings updated."
+msgstr "Einstellungen zur Foren-Liste aktualisiert."
+
+#: ../../addon/forumlist/forumlist.php:153
+msgid "Forumlist Settings"
+msgstr "Foren-Liste Einstellungen"
+
+#: ../../addon/forumlist/forumlist.php:158
+msgid "Randomise Forumlist/Forum list"
+msgstr "Zufällige Zusammenstellung der Foren-Liste"
+
+#: ../../addon/forumlist/forumlist.php:161
+msgid "Show forumlists/forums on profile forumlist"
+msgstr "Liste der Foren deren Abonnement du bist in deinem Profil anzeigen:"
+
 #: ../../addon/impressum/impressum.php:36
 msgid "Impressum"
 msgstr "Impressum"
@@ -5259,19 +6142,95 @@ msgstr "Schnell-Kommentare Einstellungen gespeichert"
 msgid "Tile Server URL"
 msgstr "Tile Server URL"
 
-#: ../../addon/openstreetmap/openstreetmap.php:71
+#: ../../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 Zoomlevel (1: Welt; 18: höchstes)"
+
+#: ../../addon/group_text/group_text.php:46
+#: ../../addon/editplain/editplain.php:46
+msgid "Editplain settings updated."
+msgstr "Editplain Einstellungen aktualisiert"
+
+#: ../../addon/group_text/group_text.php:76
+msgid "Group Text"
+msgstr "Gruppen als Text"
+
+#: ../../addon/group_text/group_text.php:78
+msgid "Use a text only (non-image) group selector in the \"group edit\" menu"
+msgstr "Beim Bearbeiten von Gruppen Text statt Bilder anzeigen"
+
+#: ../../addon/libravatar/libravatar.php:14
+msgid "Could NOT install Libravatar successfully.<br>It requires PHP >= 5.3"
+msgstr "Kann Libravatar NICHT erfolgreich installieren.<br>PHP >=5.3 wird benötigt"
+
+#: ../../addon/libravatar/libravatar.php:73
+#: ../../addon/gravatar/gravatar.php:71
+msgid "generic profile image"
+msgstr "allgemeines Profilbild"
+
+#: ../../addon/libravatar/libravatar.php:74
+#: ../../addon/gravatar/gravatar.php:72
+msgid "random geometric pattern"
+msgstr "zufällig erzeugtes geometrisches Muster"
+
+#: ../../addon/libravatar/libravatar.php:75
+#: ../../addon/gravatar/gravatar.php:73
+msgid "monster face"
+msgstr "Monstergesicht"
+
+#: ../../addon/libravatar/libravatar.php:76
+#: ../../addon/gravatar/gravatar.php:74
+msgid "computer generated face"
+msgstr "Computergesicht"
+
+#: ../../addon/libravatar/libravatar.php:77
+#: ../../addon/gravatar/gravatar.php:75
+msgid "retro arcade style face"
+msgstr "Retro Arcade Design Gesicht"
+
+#: ../../addon/libravatar/libravatar.php:83
+#, php-format
+msgid "Your PHP version %s is lower than the required PHP >= 5.3."
+msgstr "Deine PHP Version %s ist niedriger als die benötigte Version PHP >= 5.3."
+
+#: ../../addon/libravatar/libravatar.php:84
+msgid "This addon is not functional on your server."
+msgstr "Dieses Addon funktioniert auf deinem Server nicht."
+
+#: ../../addon/libravatar/libravatar.php:93
+#: ../../addon/gravatar/gravatar.php:89
+msgid "Information"
+msgstr "Information"
+
+#: ../../addon/libravatar/libravatar.php:93
 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>"
+"Gravatar addon is installed. Please disable the Gravatar addon.<br>The "
+"Libravatar addon will fall back to Gravatar if nothing was found at "
+"Libravatar."
+msgstr "Das Gravatar Addon ist installiert. Bitte schalte das Gravatar Addon aus.<br>Das Libravatar Addon nutzt Gravater, sollte nichts auf Libravatar gefunden werden."
 
-#: ../../addon/openstreetmap/openstreetmap.php:72
-msgid "Default zoom"
-msgstr "Standard Zoom"
+#: ../../addon/libravatar/libravatar.php:100
+#: ../../addon/gravatar/gravatar.php:96
+msgid "Default avatar image"
+msgstr "Standard Profilbild "
 
-#: ../../addon/openstreetmap/openstreetmap.php:72
-msgid "The default zoom level. (1:world, 18:highest)"
-msgstr "Standard Zoomlevel (1: Welt; 18: höchstes)"
+#: ../../addon/libravatar/libravatar.php:100
+msgid "Select default avatar image if none was found. See README"
+msgstr "Das Standard Avatar Bild wurde nicht gefunden. Siehe README"
+
+#: ../../addon/libravatar/libravatar.php:112
+msgid "Libravatar settings updated."
+msgstr "Libravatar Einstellungen sind aktualisiert."
 
 #: ../../addon/libertree/libertree.php:36
 msgid "Post to libertree"
@@ -5297,6 +6256,18 @@ msgstr "Libertree URL"
 msgid "Post to Libertree by default"
 msgstr "Standardmäßig bei libertree veröffentlichen"
 
+#: ../../addon/altpager/altpager.php:46
+msgid "Altpager settings updated."
+msgstr "Altpager Einstellungen sind aktualisiert."
+
+#: ../../addon/altpager/altpager.php:79
+msgid "Alternate Pagination Setting"
+msgstr "Alternative Seitenumbruch Einstellung"
+
+#: ../../addon/altpager/altpager.php:81
+msgid "Use links to \"newer\" and \"older\" pages in place of page numbers?"
+msgstr "Nutze Links zu \"neuer\" und \"älter\" Seiten, statt Seiten Nummern?"
+
 #: ../../addon/mathjax/mathjax.php:37
 msgid ""
 "The MathJax addon renders mathematical formulae written using the LaTeX "
@@ -5318,10 +6289,6 @@ msgid ""
 "be either the MathJax CDN or another installation of MathJax."
 msgstr "Die URL der MathJax Javascript-Datei, die verwendet werden soll. Diese kann entweder aus der MathJax CDN oder einer anderen Quelle stammen."
 
-#: ../../addon/editplain/editplain.php:46
-msgid "Editplain settings updated."
-msgstr "Editplain Einstellungen aktualisiert"
-
 #: ../../addon/editplain/editplain.php:76
 msgid "Editplain Settings"
 msgstr "Editplain Einstellungen"
@@ -5330,43 +6297,26 @@ msgstr "Editplain Einstellungen"
 msgid "Disable richtext status editor"
 msgstr "RichText Editor deaktivieren"
 
-#: ../../addon/gravatar/gravatar.php:71
-msgid "generic profile image"
-msgstr "allgemeines Profilbild"
-
-#: ../../addon/gravatar/gravatar.php:72
-msgid "random geometric pattern"
-msgstr "zufällig erzeugtes geometrisches Muster"
-
-#: ../../addon/gravatar/gravatar.php:73
-msgid "monster face"
-msgstr "Monstergesicht"
-
-#: ../../addon/gravatar/gravatar.php:74
-msgid "computer generated face"
-msgstr "Computergesicht"
-
-#: ../../addon/gravatar/gravatar.php:75
-msgid "retro arcade style face"
-msgstr "Retro Arcade Design Gesicht"
-
-#: ../../addon/gravatar/gravatar.php:87
-msgid "Default avatar image"
-msgstr "Standard Profilbild "
+#: ../../addon/gravatar/gravatar.php:89
+msgid ""
+"Libravatar addon is installed, too. Please disable Libravatar addon or this "
+"Gravatar addon.<br>The Libravatar addon will fall back to Gravatar if "
+"nothing was found at Libravatar."
+msgstr "Das Libravatar Addon ist ebenfalls installiert. Bitte deaktiviere das Libravatar Addon oder dieses Gravatar Addon.<br>Das Libravatar Addon nutzt Gravater, sollte nichts auf Libravatar gefunden werden."
 
-#: ../../addon/gravatar/gravatar.php:87
+#: ../../addon/gravatar/gravatar.php:96
 msgid "Select default avatar image if none was found at Gravatar. See README"
 msgstr "Wähle das Standardgesicht, wenn kein Bild auf Gravatar gefunden wurde. Schaue auch sonst im README nach."
 
-#: ../../addon/gravatar/gravatar.php:88
+#: ../../addon/gravatar/gravatar.php:97
 msgid "Rating of images"
 msgstr "Bildbewertung"
 
-#: ../../addon/gravatar/gravatar.php:88
+#: ../../addon/gravatar/gravatar.php:97
 msgid "Select the appropriate avatar rating for your site. See README"
-msgstr "Wähle eine angemessene Bildbewertung für Deinen Server. Schaue auch sonst im README nach."
+msgstr "Wähle eine angemessene Bildbewertung für deinen Server. Schaue auch sonst im README nach."
 
-#: ../../addon/gravatar/gravatar.php:102
+#: ../../addon/gravatar/gravatar.php:111
 msgid "Gravatar settings updated."
 msgstr "Gravatar Einstellungen aktualisiert."
 
@@ -5449,7 +6399,7 @@ 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 voreingestellt OAuth Schlüsselpaare verfügbar. Solltest du einen dieser Server benutzen, dann verwende bitte diese Schlüssel. Falls nicht, stellen stattdessen eine Verbindung zu irgend einem anderen StatusNet Server her (siehe unten)."
+msgstr "Für einige StatusNet Server sind voreingestellte OAuth Schlüsselpaare verfügbar. Solltest du einen dieser Server benutzen, dann verwende bitte diese Schlüssel. Falls nicht, stelle stattdessen eine Verbindung zu irgend einem anderen StatusNet Server her (siehe unten)."
 
 #: ../../addon/statusnet/statusnet.php:280
 msgid "Provide your own OAuth Credentials"
@@ -5539,7 +6489,7 @@ msgstr "Sende verlinkte #-Tags und @-Namen nach StatusNet"
 msgid "Clear OAuth configuration"
 msgstr "OAuth-Konfiguration löschen"
 
-#: ../../addon/statusnet/statusnet.php:553
+#: ../../addon/statusnet/statusnet.php:568
 msgid "API URL"
 msgstr "API-URL"
 
@@ -5579,10 +6529,6 @@ msgstr "Numfriends Einstellungen aktualisiert"
 msgid "Numfriends Settings"
 msgstr "Numfriends Einstellungen"
 
-#: ../../addon/numfriends/numfriends.php:79
-msgid "How many contacts to display on profile sidebar"
-msgstr "Wie viele Kontakte sollen in der Seitenleiste angezeigt werden"
-
 #: ../../addon/gnot/gnot.php:48
 msgid "Gnot settings updated."
 msgstr "Gnot Einstellungen aktualisiert."
@@ -5604,7 +6550,7 @@ msgstr "Dieses Plugin/Addon aktivieren?"
 #: ../../addon/gnot/gnot.php:97
 #, php-format
 msgid "[Friendica:Notify] Comment to conversation #%d"
-msgstr "[Friendica Meldung] Kommentar zum Beitrag #%d"
+msgstr "[Friendica-Meldung] Kommentar zum Beitrag #%d"
 
 #: ../../addon/wppost/wppost.php:42
 msgid "Post to Wordpress"
@@ -5636,11 +6582,11 @@ msgstr "Standardmäßig auf WordPress veröffentlichen"
 
 #: ../../addon/wppost/wppost.php:103
 msgid "Provide a backlink to the Friendica post"
-msgstr "Einen zurück zum Friendica-Beitrag hinzufügen"
+msgstr "Einen Link zurück zum Friendica-Beitrag hinzufügen"
 
-#: ../../addon/wppost/wppost.php:205
+#: ../../addon/wppost/wppost.php:207
 msgid "Read the original post and comment stream on Friendica"
-msgstr "Den Original-Beitrag samt Kommentaren bei Friendica lesen"
+msgstr "Den Originalbeitrag samt Kommentaren bei Friendica lesen"
 
 #: ../../addon/showmore/showmore.php:38
 msgid "\"Show more\" Settings"
@@ -5670,7 +6616,7 @@ msgid ""
 "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)."
-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)."
+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:90
 msgid "Piwik Base URL"
@@ -5756,11 +6702,11 @@ msgstr "Veröffentliche Ã¶ffentliche Beiträge standardmäßig bei Twitter"
 msgid "Send linked #-tags and @-names to Twitter"
 msgstr "Sende verlinkte #-Tags und @-Namen nach Twitter"
 
-#: ../../addon/twitter/twitter.php:383
+#: ../../addon/twitter/twitter.php:396
 msgid "Consumer key"
 msgstr "Consumer Key"
 
-#: ../../addon/twitter/twitter.php:384
+#: ../../addon/twitter/twitter.php:397
 msgid "Consumer secret"
 msgstr "Consumer Secret"
 
@@ -6060,10 +7006,6 @@ msgstr "Mitte"
 msgid "Set colour scheme"
 msgstr "Farbschema wählen"
 
-#: ../../include/profile_advanced.php:17 ../../boot.php:1111
-msgid "Gender:"
-msgstr "Geschlecht:"
-
 #: ../../include/profile_advanced.php:22
 msgid "j F, Y"
 msgstr "j F, Y"
@@ -6072,8 +7014,7 @@ msgstr "j F, Y"
 msgid "j F"
 msgstr "j F"
 
-#: ../../include/profile_advanced.php:30 ../../include/datetime.php:450
-#: ../../include/items.php:1446
+#: ../../include/profile_advanced.php:30
 msgid "Birthday:"
 msgstr "Geburtstag:"
 
@@ -6081,19 +7022,11 @@ msgstr "Geburtstag:"
 msgid "Age:"
 msgstr "Alter:"
 
-#: ../../include/profile_advanced.php:37 ../../boot.php:1114
-msgid "Status:"
-msgstr "Status:"
-
 #: ../../include/profile_advanced.php:43
 #, php-format
 msgid "for %1$d %2$s"
 msgstr "für %1$d %2$s"
 
-#: ../../include/profile_advanced.php:48 ../../boot.php:1116
-msgid "Homepage:"
-msgstr "Homepage:"
-
 #: ../../include/profile_advanced.php:52
 msgid "Tags:"
 msgstr "Tags"
@@ -6102,43 +7035,39 @@ msgstr "Tags"
 msgid "Religion:"
 msgstr "Religion:"
 
-#: ../../include/profile_advanced.php:58
-msgid "About:"
-msgstr "Ãœber:"
-
 #: ../../include/profile_advanced.php:60
 msgid "Hobbies/Interests:"
 msgstr "Hobbies/Interessen:"
 
-#: ../../include/profile_advanced.php:62
+#: ../../include/profile_advanced.php:67
 msgid "Contact information and Social Networks:"
 msgstr "Kontaktinformationen und Soziale Netzwerke:"
 
-#: ../../include/profile_advanced.php:64
+#: ../../include/profile_advanced.php:69
 msgid "Musical interests:"
 msgstr "Musikalische Interessen:"
 
-#: ../../include/profile_advanced.php:66
+#: ../../include/profile_advanced.php:71
 msgid "Books, literature:"
 msgstr "Literatur/Bücher:"
 
-#: ../../include/profile_advanced.php:68
+#: ../../include/profile_advanced.php:73
 msgid "Television:"
 msgstr "Fernsehen:"
 
-#: ../../include/profile_advanced.php:70
+#: ../../include/profile_advanced.php:75
 msgid "Film/dance/culture/entertainment:"
 msgstr "Filme/Tänze/Kultur/Unterhaltung:"
 
-#: ../../include/profile_advanced.php:72
+#: ../../include/profile_advanced.php:77
 msgid "Love/Romance:"
 msgstr "Liebesleben:"
 
-#: ../../include/profile_advanced.php:74
+#: ../../include/profile_advanced.php:79
 msgid "Work/employment:"
 msgstr "Arbeit/Beschäftigung:"
 
-#: ../../include/profile_advanced.php:76
+#: ../../include/profile_advanced.php:81
 msgid "School/education:"
 msgstr "Schule/Ausbildung:"
 
@@ -6178,18 +7107,6 @@ msgstr "Stündlich"
 msgid "Twice daily"
 msgstr "Zweimal täglich"
 
-#: ../../include/contact_selectors.php:59
-msgid "Daily"
-msgstr "Täglich"
-
-#: ../../include/contact_selectors.php:60
-msgid "Weekly"
-msgstr "Wöchentlich"
-
-#: ../../include/contact_selectors.php:61
-msgid "Monthly"
-msgstr "Monatlich"
-
 #: ../../include/contact_selectors.php:77
 msgid "OStatus"
 msgstr "OStatus"
@@ -6358,7 +7275,7 @@ msgstr "Untreu"
 msgid "Sex Addict"
 msgstr "Sexbesessen"
 
-#: ../../include/profile_selectors.php:42 ../../include/user.php:272
+#: ../../include/profile_selectors.php:42 ../../include/user.php:278
 msgid "Friends"
 msgstr "Freunde"
 
@@ -6446,22 +7363,21 @@ msgstr "Ist mir nicht wichtig"
 msgid "Ask me"
 msgstr "Frag mich"
 
-#: ../../include/event.php:17 ../../include/bb2diaspora.php:249
+#: ../../include/event.php:20 ../../include/bb2diaspora.php:439
 msgid "Starts:"
 msgstr "Beginnt:"
 
-#: ../../include/event.php:27 ../../include/bb2diaspora.php:257
+#: ../../include/event.php:30 ../../include/bb2diaspora.php:447
 msgid "Finishes:"
 msgstr "Endet:"
 
-#: ../../include/delivery.php:456 ../../include/notifier.php:678
+#: ../../include/delivery.php:456 ../../include/notifier.php:703
 msgid "(no subject)"
 msgstr "(kein Betreff)"
 
-#: ../../include/delivery.php:463 ../../include/enotify.php:26
-#: ../../include/notifier.php:685
-msgid "noreply"
-msgstr "noreply"
+#: ../../include/Scrape.php:575
+msgid " on Last.fm"
+msgstr " bei Last.fm"
 
 #: ../../include/text.php:243
 msgid "prev"
@@ -6479,158 +7395,266 @@ msgstr "letzte"
 msgid "next"
 msgstr "nächste"
 
-#: ../../include/text.php:568
+#: ../../include/text.php:295
+msgid "newer"
+msgstr "neuer"
+
+#: ../../include/text.php:299
+msgid "older"
+msgstr "älter"
+
+#: ../../include/text.php:597
 msgid "No contacts"
 msgstr "Keine Kontakte"
 
-#: ../../include/text.php:577
+#: ../../include/text.php:606
 #, php-format
 msgid "%d Contact"
 msgid_plural "%d Contacts"
 msgstr[0] "%d Kontakt"
 msgstr[1] "%d Kontakte"
 
-#: ../../include/text.php:835
-msgid "Monday"
-msgstr "Montag"
+#: ../../include/text.php:719
+msgid "poke"
+msgstr "anstupsen"
 
-#: ../../include/text.php:835
-msgid "Tuesday"
-msgstr "Dienstag"
+#: ../../include/text.php:719 ../../include/conversation.php:201
+msgid "poked"
+msgstr "stupste"
 
-#: ../../include/text.php:835
-msgid "Wednesday"
-msgstr "Mittwoch"
+#: ../../include/text.php:720
+msgid "ping"
+msgstr "anpingen"
 
-#: ../../include/text.php:835
-msgid "Thursday"
-msgstr "Donnerstag"
+#: ../../include/text.php:720
+msgid "pinged"
+msgstr "pingte"
 
-#: ../../include/text.php:835
-msgid "Friday"
-msgstr "Freitag"
+#: ../../include/text.php:721
+msgid "prod"
+msgstr "knuffen"
 
-#: ../../include/text.php:835
-msgid "Saturday"
-msgstr "Samstag"
+#: ../../include/text.php:721
+msgid "prodded"
+msgstr "knuffte"
 
-#: ../../include/text.php:835
-msgid "Sunday"
-msgstr "Sonntag"
+#: ../../include/text.php:722
+msgid "slap"
+msgstr "ohrfeigen"
+
+#: ../../include/text.php:722
+msgid "slapped"
+msgstr "ohrfeigte"
+
+#: ../../include/text.php:723
+msgid "finger"
+msgstr "befummeln"
+
+#: ../../include/text.php:723
+msgid "fingered"
+msgstr "befummelte"
+
+#: ../../include/text.php:724
+msgid "rebuff"
+msgstr "eine Abfuhr erteilen"
+
+#: ../../include/text.php:724
+msgid "rebuffed"
+msgstr "abfuhrerteilte"
+
+#: ../../include/text.php:736
+msgid "happy"
+msgstr "glücklich"
+
+#: ../../include/text.php:737
+msgid "sad"
+msgstr "traurig"
+
+#: ../../include/text.php:738
+msgid "mellow"
+msgstr "sanft"
 
-#: ../../include/text.php:839
+#: ../../include/text.php:739
+msgid "tired"
+msgstr "müde"
+
+#: ../../include/text.php:740
+msgid "perky"
+msgstr "frech"
+
+#: ../../include/text.php:741
+msgid "angry"
+msgstr "sauer"
+
+#: ../../include/text.php:742
+msgid "stupified"
+msgstr "verblüfft"
+
+#: ../../include/text.php:743
+msgid "puzzled"
+msgstr "verwirrt"
+
+#: ../../include/text.php:744
+msgid "interested"
+msgstr "interessiert"
+
+#: ../../include/text.php:745
+msgid "bitter"
+msgstr "verbittert"
+
+#: ../../include/text.php:746
+msgid "cheerful"
+msgstr "fröhlich"
+
+#: ../../include/text.php:747
+msgid "alive"
+msgstr "lebendig"
+
+#: ../../include/text.php:748
+msgid "annoyed"
+msgstr "verärgert"
+
+#: ../../include/text.php:749
+msgid "anxious"
+msgstr "unruhig"
+
+#: ../../include/text.php:750
+msgid "cranky"
+msgstr "schrullig"
+
+#: ../../include/text.php:751
+msgid "disturbed"
+msgstr "verstört"
+
+#: ../../include/text.php:752
+msgid "frustrated"
+msgstr "frustriert"
+
+#: ../../include/text.php:753
+msgid "motivated"
+msgstr "motiviert"
+
+#: ../../include/text.php:754
+msgid "relaxed"
+msgstr "entspannt"
+
+#: ../../include/text.php:755
+msgid "surprised"
+msgstr "überrascht"
+
+#: ../../include/text.php:921
 msgid "January"
 msgstr "Januar"
 
-#: ../../include/text.php:839
+#: ../../include/text.php:921
 msgid "February"
 msgstr "Februar"
 
-#: ../../include/text.php:839
+#: ../../include/text.php:921
 msgid "March"
 msgstr "März"
 
-#: ../../include/text.php:839
+#: ../../include/text.php:921
 msgid "April"
 msgstr "April"
 
-#: ../../include/text.php:839
+#: ../../include/text.php:921
 msgid "May"
 msgstr "Mai"
 
-#: ../../include/text.php:839
+#: ../../include/text.php:921
 msgid "June"
 msgstr "Juni"
 
-#: ../../include/text.php:839
+#: ../../include/text.php:921
 msgid "July"
 msgstr "Juli"
 
-#: ../../include/text.php:839
+#: ../../include/text.php:921
 msgid "August"
 msgstr "August"
 
-#: ../../include/text.php:839
+#: ../../include/text.php:921
 msgid "September"
 msgstr "September"
 
-#: ../../include/text.php:839
+#: ../../include/text.php:921
 msgid "October"
 msgstr "Oktober"
 
-#: ../../include/text.php:839
+#: ../../include/text.php:921
 msgid "November"
 msgstr "November"
 
-#: ../../include/text.php:839
+#: ../../include/text.php:921
 msgid "December"
 msgstr "Dezember"
 
-#: ../../include/text.php:925
+#: ../../include/text.php:1007
 msgid "bytes"
 msgstr "Byte"
 
-#: ../../include/text.php:945 ../../include/text.php:960
+#: ../../include/text.php:1027 ../../include/text.php:1042
 msgid "remove"
 msgstr "löschen"
 
-#: ../../include/text.php:945 ../../include/text.php:960
+#: ../../include/text.php:1027 ../../include/text.php:1042
 msgid "[remove]"
 msgstr "[löschen]"
 
-#: ../../include/text.php:948
+#: ../../include/text.php:1030
 msgid "Categories:"
 msgstr "Kategorien:"
 
-#: ../../include/text.php:963
+#: ../../include/text.php:1045
 msgid "Filed under:"
 msgstr "Abgelegt unter:"
 
-#: ../../include/text.php:979 ../../include/text.php:991
+#: ../../include/text.php:1061 ../../include/text.php:1073
 msgid "Click to open/close"
 msgstr "Zum Ã¶ffnen/schließen klicken"
 
-#: ../../include/text.php:1096 ../../include/user.php:230
+#: ../../include/text.php:1179 ../../include/user.php:236
 msgid "default"
-msgstr "standard"
+msgstr "Standard"
 
-#: ../../include/text.php:1108
+#: ../../include/text.php:1191
 msgid "Select an alternate language"
 msgstr "Alternative Sprache auswählen"
 
-#: ../../include/text.php:1318
+#: ../../include/text.php:1401
 msgid "activity"
 msgstr "Aktivität"
 
-#: ../../include/text.php:1320
+#: ../../include/text.php:1403
 msgid "comment"
 msgstr "Kommentar"
 
-#: ../../include/text.php:1321
+#: ../../include/text.php:1404
 msgid "post"
 msgstr "Beitrag"
 
-#: ../../include/text.php:1476
+#: ../../include/text.php:1559
 msgid "Item filed"
 msgstr "Beitrag abgelegt"
 
-#: ../../include/diaspora.php:593
+#: ../../include/diaspora.php:691
 msgid "Sharing notification from Diaspora network"
 msgstr "Freigabe-Benachrichtigung von Diaspora"
 
-#: ../../include/diaspora.php:2074
+#: ../../include/diaspora.php:2202
 msgid "Attachments:"
 msgstr "Anhänge:"
 
-#: ../../include/network.php:827
+#: ../../include/network.php:849
 msgid "view full size"
 msgstr "Volle Größe anzeigen"
 
-#: ../../include/oembed.php:134
+#: ../../include/oembed.php:137
 msgid "Embedded content"
 msgstr "Eingebetteter Inhalt"
 
-#: ../../include/oembed.php:143
+#: ../../include/oembed.php:146
 msgid "Embedding disabled"
 msgstr "Einbettungen deaktiviert"
 
@@ -6669,7 +7693,7 @@ msgstr "Neue Gruppe erstellen"
 msgid "Contacts not in any group"
 msgstr "Kontakte in keiner Gruppe"
 
-#: ../../include/nav.php:46 ../../boot.php:821
+#: ../../include/nav.php:46 ../../boot.php:920
 msgid "Logout"
 msgstr "Abmelden"
 
@@ -6677,7 +7701,7 @@ msgstr "Abmelden"
 msgid "End this session"
 msgstr "Diese Sitzung beenden"
 
-#: ../../include/nav.php:49 ../../boot.php:1508
+#: ../../include/nav.php:49 ../../boot.php:1635
 msgid "Status"
 msgstr "Status"
 
@@ -6739,7 +7763,7 @@ msgstr "Markiere alle Systembenachrichtigungen als gelesen"
 
 #: ../../include/nav.php:128
 msgid "Private mail"
-msgstr "Private Email"
+msgstr "Private E-Mail"
 
 #: ../../include/nav.php:129
 msgid "Inbox"
@@ -6757,11 +7781,11 @@ msgstr "Verwalten"
 msgid "Manage other pages"
 msgstr "Andere Seiten verwalten"
 
-#: ../../include/nav.php:138 ../../boot.php:1069
+#: ../../include/nav.php:138 ../../boot.php:1168
 msgid "Profiles"
 msgstr "Profile"
 
-#: ../../include/nav.php:138 ../../boot.php:1069
+#: ../../include/nav.php:138 ../../boot.php:1168
 msgid "Manage/edit profiles"
 msgstr "Profile verwalten/editieren"
 
@@ -6773,7 +7797,7 @@ msgstr "Freunde und Kontakte verwalten/editieren"
 msgid "Site setup and configuration"
 msgstr "Einstellungen der Seite und Konfiguration"
 
-#: ../../include/nav.php:169
+#: ../../include/nav.php:170
 msgid "Nothing new here"
 msgstr "Keine Neuigkeiten."
 
@@ -6854,91 +7878,89 @@ msgstr "Die Fehlermeldung lautete:"
 msgid "Miscellaneous"
 msgstr "Verschiedenes"
 
-#: ../../include/datetime.php:131 ../../include/datetime.php:263
+#: ../../include/datetime.php:153 ../../include/datetime.php:285
 msgid "year"
 msgstr "Jahr"
 
-#: ../../include/datetime.php:136 ../../include/datetime.php:264
+#: ../../include/datetime.php:158 ../../include/datetime.php:286
 msgid "month"
 msgstr "Monat"
 
-#: ../../include/datetime.php:141 ../../include/datetime.php:266
+#: ../../include/datetime.php:163 ../../include/datetime.php:288
 msgid "day"
 msgstr "Tag"
 
-#: ../../include/datetime.php:254
+#: ../../include/datetime.php:276
 msgid "never"
 msgstr "nie"
 
-#: ../../include/datetime.php:260
+#: ../../include/datetime.php:282
 msgid "less than a second ago"
 msgstr "vor weniger als einer Sekunde"
 
-#: ../../include/datetime.php:263
-msgid "years"
-msgstr "Jahre"
-
-#: ../../include/datetime.php:264
-msgid "months"
-msgstr "Monate"
-
-#: ../../include/datetime.php:265
+#: ../../include/datetime.php:287
 msgid "week"
 msgstr "Woche"
 
-#: ../../include/datetime.php:265
-msgid "weeks"
-msgstr "Wochen"
-
-#: ../../include/datetime.php:266
-msgid "days"
-msgstr "Tage"
-
-#: ../../include/datetime.php:267
+#: ../../include/datetime.php:289
 msgid "hour"
 msgstr "Stunde"
 
-#: ../../include/datetime.php:267
+#: ../../include/datetime.php:289
 msgid "hours"
 msgstr "Stunden"
 
-#: ../../include/datetime.php:268
+#: ../../include/datetime.php:290
 msgid "minute"
 msgstr "Minute"
 
-#: ../../include/datetime.php:268
+#: ../../include/datetime.php:290
 msgid "minutes"
 msgstr "Minuten"
 
-#: ../../include/datetime.php:269
+#: ../../include/datetime.php:291
 msgid "second"
 msgstr "Sekunde"
 
-#: ../../include/datetime.php:269
+#: ../../include/datetime.php:291
 msgid "seconds"
 msgstr "Sekunden"
 
-#: ../../include/datetime.php:278
+#: ../../include/datetime.php:300
 #, php-format
 msgid "%1$d %2$s ago"
 msgstr "%1$d %2$s her"
 
+#: ../../include/datetime.php:472 ../../include/items.php:1621
+#, php-format
+msgid "%s's birthday"
+msgstr "%ss Geburtstag"
+
+#: ../../include/datetime.php:473 ../../include/items.php:1622
+#, php-format
+msgid "Happy Birthday %s"
+msgstr "Herzlichen Glückwunsch %s"
+
 #: ../../include/onepoll.php:399
 msgid "From: "
 msgstr "Von: "
 
-#: ../../include/bbcode.php:210 ../../include/bbcode.php:230
+#: ../../include/bbcode.php:102 ../../include/bbcode.php:323
+msgid "Image/photo"
+msgstr "Bild/Foto"
+
+#: ../../include/bbcode.php:288 ../../include/bbcode.php:308
 msgid "$1 wrote:"
 msgstr "$1 hat geschrieben:"
 
-#: ../../include/bbcode.php:245 ../../include/bbcode.php:314
-msgid "Image/photo"
-msgstr "Bild/Foto"
+#: ../../include/bbcode.php:327 ../../include/bbcode.php:328
+msgid "Encrypted content"
+msgstr "Verschlüsselter Inhalt"
 
 #: ../../include/dba.php:41
 #, php-format
 msgid "Cannot locate DNS info for database server '%s'"
-msgstr "Kann die DNS Informationen für den Datenbanken Server '%s' nicht ermitteln."
+msgstr "Kann die DNS Informationen für den Datenbankserver '%s' nicht ermitteln."
 
 #: ../../include/message.php:15 ../../include/message.php:171
 msgid "[no subject]"
@@ -6948,172 +7970,188 @@ msgstr "[kein Betreff]"
 msgid "Visible to everybody"
 msgstr "Für jeden sichtbar"
 
-#: ../../include/enotify.php:14
+#: ../../include/enotify.php:16
 msgid "Friendica Notification"
 msgstr "Friendica-Benachrichtigung"
 
-#: ../../include/enotify.php:17
+#: ../../include/enotify.php:19
 msgid "Thank You,"
 msgstr "Danke,"
 
-#: ../../include/enotify.php:19
+#: ../../include/enotify.php:21
 #, php-format
 msgid "%s Administrator"
 msgstr "der Administrator von %s"
 
-#: ../../include/enotify.php:38
+#: ../../include/enotify.php:40
 #, php-format
 msgid "%s <!item_type!>"
 msgstr "%s <!item_type!>"
 
-#: ../../include/enotify.php:42
+#: ../../include/enotify.php:44
 #, php-format
 msgid "[Friendica:Notify] New mail received at %s"
-msgstr "[Friendica Meldung] Neue Nachricht erhalten von %s"
+msgstr "[Friendica-Meldung] Neue Nachricht erhalten von %s"
 
-#: ../../include/enotify.php:44
+#: ../../include/enotify.php:46
 #, php-format
 msgid "%1$s sent you a new private message at %2$s."
-msgstr "%1$s hat Dir eine neues private Nachricht geschickt auf %2$s."
+msgstr "%1$s hat dir eine neue private Nachricht auf %2$s geschickt."
 
-#: ../../include/enotify.php:45
+#: ../../include/enotify.php:47
 #, php-format
 msgid "%1$s sent you %2$s."
-msgstr "%1$s schickte Dir %2$s."
+msgstr "%1$s schickte dir %2$s."
 
-#: ../../include/enotify.php:45
+#: ../../include/enotify.php:47
 msgid "a private message"
 msgstr "eine private Nachricht"
 
-#: ../../include/enotify.php:46
+#: ../../include/enotify.php:48
 #, php-format
 msgid "Please visit %s to view and/or reply to your private messages."
 msgstr "Bitte besuche %s, um deine privaten Nachrichten anzusehen und/oder zu beantworten."
 
-#: ../../include/enotify.php:73
+#: ../../include/enotify.php:89
 #, php-format
 msgid "%1$s commented on [url=%2$s]a %3$s[/url]"
 msgstr "%1$s kommentierte [url=%2$s]a %3$s[/url]"
 
-#: ../../include/enotify.php:80
+#: ../../include/enotify.php:96
 #, php-format
 msgid "%1$s commented on [url=%2$s]%3$s's %4$s[/url]"
-msgstr "%1$s kommentierte [url=%2$s]%3$s's %4$s[/url]"
+msgstr "%1$s kommentierte [url=%2$s]%3$ss %4$s[/url]"
 
-#: ../../include/enotify.php:88
+#: ../../include/enotify.php:104
 #, php-format
 msgid "%1$s commented on [url=%2$s]your %3$s[/url]"
-msgstr "%1$s kommentierte [url=%2$s]Deinen Beitrag %3$s[/url]"
+msgstr "%1$s kommentierte [url=%2$s]deinen %3$s[/url]"
 
-#: ../../include/enotify.php:98
+#: ../../include/enotify.php:114
 #, php-format
 msgid "[Friendica:Notify] Comment to conversation #%1$d by %2$s"
-msgstr "[Friendica Meldung] Kommentar zum Beitrag #%1$d von %2$s"
+msgstr "[Friendica-Meldung] Kommentar zum Beitrag #%1$d von %2$s"
 
-#: ../../include/enotify.php:99
+#: ../../include/enotify.php:115
 #, php-format
 msgid "%s commented on an item/conversation you have been following."
 msgstr "%s hat einen Beitrag kommentiert, dem du folgst."
 
-#: ../../include/enotify.php:102 ../../include/enotify.php:117
-#: ../../include/enotify.php:130 ../../include/enotify.php:143
+#: ../../include/enotify.php:118 ../../include/enotify.php:133
+#: ../../include/enotify.php:146 ../../include/enotify.php:164
+#: ../../include/enotify.php:177
 #, 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:109
+#: ../../include/enotify.php:125
 #, php-format
 msgid "[Friendica:Notify] %s posted to your profile wall"
-msgstr "[Friendica Meldung] %s hat auf Deine Pinnwand geschrieben"
+msgstr "[Friendica-Meldung] %s hat auf deine Pinnwand geschrieben"
 
-#: ../../include/enotify.php:111
+#: ../../include/enotify.php:127
 #, php-format
 msgid "%1$s posted to your profile wall at %2$s"
-msgstr "%1$s schrieb auf Deine Pinnwand auf %2$s"
+msgstr "%1$s schrieb auf %2$s auf deine Pinnwand"
 
-#: ../../include/enotify.php:113
+#: ../../include/enotify.php:129
 #, php-format
-msgid "%1$s posted to [url=%2s]your wall[/url]"
-msgstr "%1$s schrieb auf [url=%2s]Deine Pinnwand[/url]"
+msgid "%1$s posted to [url=%2$s]your wall[/url]"
+msgstr "%1$s hat etwas auf [url=%2$s]deiner Pinnwand[/url] gepostet"
 
-#: ../../include/enotify.php:124
+#: ../../include/enotify.php:140
 #, php-format
 msgid "[Friendica:Notify] %s tagged you"
-msgstr "[Friendica Meldung] %s hat Dich erwähnt"
+msgstr "[Friendica-Meldung] %s hat dich erwähnt"
 
-#: ../../include/enotify.php:125
+#: ../../include/enotify.php:141
 #, php-format
 msgid "%1$s tagged you at %2$s"
-msgstr "%1$s erwähnte Dich auf %2$s"
+msgstr "%1$s erwähnte dich auf %2$s"
+
+#: ../../include/enotify.php:142
+#, php-format
+msgid "%1$s [url=%2$s]tagged you[/url]."
+msgstr "%1$s [url=%2$s]erwähnte dich[/url]."
 
-#: ../../include/enotify.php:126
+#: ../../include/enotify.php:154
 #, php-format
-msgid "%1$s [url=%2s]tagged you[/url]."
-msgstr "%1$s [url=%2s]erwähnte Dich[/url]."
+msgid "[Friendica:Notify] %1$s poked you"
+msgstr "[Friendica-Meldung] %1$s hat dich angestupst"
 
-#: ../../include/enotify.php:137
+#: ../../include/enotify.php:155
+#, php-format
+msgid "%1$s poked you at %2$s"
+msgstr "%1$s hat dich auf %2$s angestupst"
+
+#: ../../include/enotify.php:156
+#, php-format
+msgid "%1$s [url=%2$s]poked you[/url]."
+msgstr "%1$s [url=%2$s]hat dich angestupst[/url]."
+
+#: ../../include/enotify.php:171
 #, php-format
 msgid "[Friendica:Notify] %s tagged your post"
-msgstr "[Friendica Meldung] %s markierte Deinen Beitrag"
+msgstr "[Friendica-Meldung] %s hat deinen Beitrag getaggt"
 
-#: ../../include/enotify.php:138
+#: ../../include/enotify.php:172
 #, php-format
 msgid "%1$s tagged your post at %2$s"
-msgstr "%1$s erwähnte Deinen Beitrag auf %2$s"
+msgstr "%1$s erwähnte deinen Beitrag auf %2$s"
 
-#: ../../include/enotify.php:139
+#: ../../include/enotify.php:173
 #, php-format
 msgid "%1$s tagged [url=%2$s]your post[/url]"
 msgstr "%1$s erwähnte [url=%2$s]Deinen Beitrag[/url]"
 
-#: ../../include/enotify.php:150
+#: ../../include/enotify.php:184
 msgid "[Friendica:Notify] Introduction received"
-msgstr "[Friendica Meldung] Kontaktanfrage erhalten"
+msgstr "[Friendica-Meldung] Kontaktanfrage erhalten"
 
-#: ../../include/enotify.php:151
+#: ../../include/enotify.php:185
 #, php-format
 msgid "You've received an introduction from '%1$s' at %2$s"
-msgstr "Du hast eine Kontaktanfrage erhalten von '%1$s' auf %2$s"
+msgstr "Du hast eine Kontaktanfrage von '%1$s' auf %2$s erhalten"
 
-#: ../../include/enotify.php:152
+#: ../../include/enotify.php:186
 #, php-format
 msgid "You've received [url=%1$s]an introduction[/url] from %2$s."
-msgstr "Du hast eine [url=%1$s]Kontaktanfrage[/url] erhalten von %2$s."
+msgstr "Du hast eine [url=%1$s]Kontaktanfrage[/url] von %2$s erhalten."
 
-#: ../../include/enotify.php:155 ../../include/enotify.php:173
+#: ../../include/enotify.php:189 ../../include/enotify.php:207
 #, php-format
 msgid "You may visit their profile at %s"
 msgstr "Hier kannst du das Profil betrachten: %s"
 
-#: ../../include/enotify.php:157
+#: ../../include/enotify.php:191
 #, 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:164
+#: ../../include/enotify.php:198
 msgid "[Friendica:Notify] Friend suggestion received"
-msgstr "[Friendica Meldung] Kontaktvorschlag erhalten"
+msgstr "[Friendica-Meldung] Kontaktvorschlag erhalten"
 
-#: ../../include/enotify.php:165
+#: ../../include/enotify.php:199
 #, php-format
 msgid "You've received a friend suggestion from '%1$s' at %2$s"
-msgstr "Du hast einen Freunde-Vorschlag erhalten von '%1$s' auf %2$s"
+msgstr "Du hast einen Freunde-Vorschlag von '%1$s' auf %2$s erhalten"
 
-#: ../../include/enotify.php:166
+#: ../../include/enotify.php:200
 #, php-format
 msgid ""
 "You've received [url=%1$s]a friend suggestion[/url] for %2$s from %3$s."
-msgstr "Du hast einen [url=%1$s]Freunde-Vorschlag[/url] erhalten %2$s von %3$s."
+msgstr "Du hast einen [url=%1$s]Freunde-Vorschlag[/url] %2$s von %3$s erhalten."
 
-#: ../../include/enotify.php:171
+#: ../../include/enotify.php:205
 msgid "Name:"
 msgstr "Name:"
 
-#: ../../include/enotify.php:172
+#: ../../include/enotify.php:206
 msgid "Photo:"
 msgstr "Foto:"
 
-#: ../../include/enotify.php:175
+#: ../../include/enotify.php:209
 #, php-format
 msgid "Please visit %s to approve or reject the suggestion."
 msgstr "Bitte besuche %s, um den Vorschlag zu akzeptieren oder abzulehnen."
@@ -7127,73 +8165,64 @@ 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."
 
-#: ../../include/follow.php:60 ../../include/follow.php:75
+#: ../../include/follow.php:60 ../../include/follow.php:80
 msgid "No compatible communication protocols or feeds were discovered."
 msgstr "Es wurden keine kompatiblen Kommunikationsprotokolle oder Feeds gefunden."
 
-#: ../../include/follow.php:73
+#: ../../include/follow.php:78
 msgid "The profile address specified does not provide adequate information."
 msgstr "Die angegebene Profiladresse liefert unzureichende Informationen."
 
-#: ../../include/follow.php:77
+#: ../../include/follow.php:82
 msgid "An author or name was not found."
 msgstr "Es wurde kein Autor oder Name gefunden."
 
-#: ../../include/follow.php:79
+#: ../../include/follow.php:84
 msgid "No browser URL could be matched to this address."
 msgstr "Zu dieser Adresse konnte keine passende Browser URL gefunden werden."
 
-#: ../../include/follow.php:81
+#: ../../include/follow.php:86
 msgid ""
 "Unable to match @-style Identity Address with a known protocol or email "
 "contact."
 msgstr "Konnte die @-Adresse mit keinem der bekannten Protokolle oder Email-Kontakte abgleichen."
 
-#: ../../include/follow.php:82
+#: ../../include/follow.php:87
 msgid "Use mailto: in front of address to force email check."
-msgstr "Verwende mailto: vor der Email Adresse um eine Ãœberprüfung der Email Adresse zu erzwingen."
+msgstr "Verwende mailto: vor der Email Adresse, um eine Ãœberprüfung der E-Mail-Adresse zu erzwingen."
 
-#: ../../include/follow.php:88
+#: ../../include/follow.php:93
 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."
 
-#: ../../include/follow.php:93
+#: ../../include/follow.php:103
 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."
 
-#: ../../include/follow.php:169
+#: ../../include/follow.php:205
 msgid "Unable to retrieve contact information."
 msgstr "Konnte die Kontaktinformationen nicht empfangen."
 
-#: ../../include/follow.php:223
+#: ../../include/follow.php:259
 msgid "following"
 msgstr "folgen"
 
-#: ../../include/items.php:2790
+#: ../../include/items.php:3217
 msgid "A new person is sharing with you at "
 msgstr "Eine neue Person teilt mit dir auf "
 
-#: ../../include/items.php:2790
+#: ../../include/items.php:3217
 msgid "You have a new follower at "
 msgstr "Du hast einen neuen Kontakt auf "
 
-#: ../../include/items.php:3452
+#: ../../include/items.php:3886
 msgid "Archives"
 msgstr "Archiv"
 
-#: ../../include/bb2diaspora.php:102 ../../include/bb2diaspora.php:112
-#: ../../include/bb2diaspora.php:113
-msgid "image/photo"
-msgstr "Bild/Foto"
-
-#: ../../include/bb2diaspora.php:102
-msgid "link"
-msgstr "Verweis"
-
 #: ../../include/user.php:38
 msgid "An invitation is required."
 msgstr "Du benötigst eine Einladung."
@@ -7240,7 +8269,7 @@ msgid ""
 "must also begin with a letter."
 msgstr "Dein Spitzname darf nur aus Buchstaben und Zahlen (\"a-z\",\"0-9\", \"_\" und \"-\") bestehen, außerdem muss er mit einem Buchstaben beginnen."
 
-#: ../../include/user.php:127 ../../include/user.php:219
+#: ../../include/user.php:127 ../../include/user.php:225
 msgid "Nickname is already registered. Please choose another."
 msgstr "Dieser Spitzname ist bereits vergeben. Bitte wähle einen anderen."
 
@@ -7254,11 +8283,11 @@ msgstr "Dieser Spitzname ist bereits vergeben. Bitte wähle einen anderen."
 msgid "SERIOUS ERROR: Generation of security keys failed."
 msgstr "FATALER FEHLER: Sicherheitsschlüssel konnten nicht erzeugt werden."
 
-#: ../../include/user.php:205
+#: ../../include/user.php:211
 msgid "An error occurred during registration. Please try again."
-msgstr "Wärend der Anmeldung ist ein Fehler aufgetreten. Bitte versuche es noch einmal."
+msgstr "Während der Anmeldung ist ein Fehler aufgetreten. Bitte versuche es noch einmal."
 
-#: ../../include/user.php:240
+#: ../../include/user.php:246
 msgid "An error occurred creating your default profile. Please try again."
 msgstr "Bei der Erstellung des Standardprofils ist ein Fehler aufgetreten. Bitte versuche es noch einmal."
 
@@ -7284,345 +8313,256 @@ msgstr "Das Sicherheitsmerkmal war nicht korrekt. Das passiert meistens wenn das
 msgid "stopped following"
 msgstr "wird nicht mehr gefolgt"
 
-#: ../../include/Contact.php:218 ../../include/conversation.php:842
+#: ../../include/Contact.php:220 ../../include/conversation.php:1002
+msgid "Poke"
+msgstr "Anstupsen"
+
+#: ../../include/Contact.php:221 ../../include/conversation.php:996
 msgid "View Status"
 msgstr "Pinnwand anschauen"
 
-#: ../../include/Contact.php:219 ../../include/conversation.php:843
+#: ../../include/Contact.php:222 ../../include/conversation.php:997
 msgid "View Profile"
 msgstr "Profil anschauen"
 
-#: ../../include/Contact.php:220 ../../include/conversation.php:844
+#: ../../include/Contact.php:223 ../../include/conversation.php:998
 msgid "View Photos"
 msgstr "Bilder anschauen"
 
-#: ../../include/Contact.php:221 ../../include/Contact.php:234
-#: ../../include/conversation.php:845
+#: ../../include/Contact.php:224 ../../include/Contact.php:237
+#: ../../include/conversation.php:999
 msgid "Network Posts"
 msgstr "Netzwerkbeiträge"
 
-#: ../../include/Contact.php:222 ../../include/Contact.php:234
-#: ../../include/conversation.php:846
+#: ../../include/Contact.php:225 ../../include/Contact.php:237
+#: ../../include/conversation.php:1000
 msgid "Edit Contact"
 msgstr "Kontakt bearbeiten"
 
-#: ../../include/Contact.php:223 ../../include/Contact.php:234
-#: ../../include/conversation.php:847
+#: ../../include/Contact.php:226 ../../include/Contact.php:237
+#: ../../include/conversation.php:1001
 msgid "Send PM"
 msgstr "Private Nachricht senden"
 
-#: ../../include/conversation.php:163
+#: ../../include/conversation.php:197
+#, php-format
+msgid "%1$s poked %2$s"
+msgstr "%1$s hat %2$s angestupst"
+
+#: ../../include/conversation.php:281
 msgid "post/item"
 msgstr "Nachricht/Beitrag"
 
-#: ../../include/conversation.php:164
+#: ../../include/conversation.php:282
 #, 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:327 ../../include/conversation.php:608
-msgid "Select"
-msgstr "Auswählen"
-
-#: ../../include/conversation.php:344 ../../include/conversation.php:701
-#: ../../include/conversation.php:702
-#, php-format
-msgid "View %s's profile @ %s"
-msgstr "Das Profil von %s auf %s betrachten."
-
-#: ../../include/conversation.php:354 ../../include/conversation.php:713
-#, php-format
-msgid "%s from %s"
-msgstr "%s von %s"
-
-#: ../../include/conversation.php:369
-msgid "View in context"
-msgstr "Im Zusammenhang betrachten"
-
-#: ../../include/conversation.php:475
-#, php-format
-msgid "%d comment"
-msgid_plural "%d comments"
-msgstr[0] "%d Kommentar"
-msgstr[1] "%d Kommentare"
-
-#: ../../include/conversation.php:554
-msgid "like"
-msgstr "mag ich"
-
-#: ../../include/conversation.php:555
-msgid "dislike"
-msgstr "mag ich nicht"
-
-#: ../../include/conversation.php:557
-msgid "Share this"
-msgstr "Weitersagen"
-
-#: ../../include/conversation.php:557
-msgid "share"
-msgstr "Teilen"
-
-#: ../../include/conversation.php:581
-msgid "Bold"
-msgstr "Fett"
-
-#: ../../include/conversation.php:582
-msgid "Italic"
-msgstr "Kursiv"
-
-#: ../../include/conversation.php:583
-msgid "Underline"
-msgstr "Unterstrichen"
-
-#: ../../include/conversation.php:584
-msgid "Quote"
-msgstr "Zitat"
-
-#: ../../include/conversation.php:585
-msgid "Code"
-msgstr "Code"
-
-#: ../../include/conversation.php:586
-msgid "Image"
-msgstr "Bild"
-
-#: ../../include/conversation.php:587
-msgid "Link"
-msgstr "Verweis"
-
-#: ../../include/conversation.php:588
-msgid "Video"
-msgstr "Video"
-
-#: ../../include/conversation.php:621
-msgid "add star"
-msgstr "markieren"
-
-#: ../../include/conversation.php:622
-msgid "remove star"
-msgstr "Markierung entfernen"
-
-#: ../../include/conversation.php:623
-msgid "toggle star status"
-msgstr "Markierung umschalten"
-
-#: ../../include/conversation.php:626
-msgid "starred"
-msgstr "markiert"
-
-#: ../../include/conversation.php:627
-msgid "add tag"
-msgstr "Tag hinzufügen"
-
-#: ../../include/conversation.php:631
-msgid "save to folder"
-msgstr "In Ordner speichern"
-
-#: ../../include/conversation.php:703
-msgid "to"
-msgstr "zu"
-
-#: ../../include/conversation.php:704
-msgid "Wall-to-Wall"
-msgstr "Wall-to-Wall"
-
-#: ../../include/conversation.php:705
-msgid "via Wall-To-Wall:"
-msgstr "via Wall-To-Wall:"
-
-#: ../../include/conversation.php:750
+#: ../../include/conversation.php:902
 msgid "Delete Selected Items"
 msgstr "Lösche die markierten Beiträge"
 
-#: ../../include/conversation.php:901
+#: ../../include/conversation.php:1060
 #, php-format
 msgid "%s likes this."
 msgstr "%s mag das."
 
-#: ../../include/conversation.php:901
+#: ../../include/conversation.php:1060
 #, php-format
 msgid "%s doesn't like this."
 msgstr "%s mag das nicht."
 
-#: ../../include/conversation.php:905
+#: ../../include/conversation.php:1064
 #, 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:907
+#: ../../include/conversation.php:1066
 #, 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:913
+#: ../../include/conversation.php:1072
 msgid "and"
 msgstr "und"
 
-#: ../../include/conversation.php:916
+#: ../../include/conversation.php:1075
 #, php-format
 msgid ", and %d other people"
 msgstr " und %d andere"
 
-#: ../../include/conversation.php:917
+#: ../../include/conversation.php:1076
 #, php-format
 msgid "%s like this."
 msgstr "%s mögen das."
 
-#: ../../include/conversation.php:917
+#: ../../include/conversation.php:1076
 #, php-format
 msgid "%s don't like this."
 msgstr "%s mögen das nicht."
 
-#: ../../include/conversation.php:942
+#: ../../include/conversation.php:1100 ../../include/conversation.php:1117
 msgid "Visible to <strong>everybody</strong>"
 msgstr "Für <strong>jedermann</strong> sichtbar"
 
-#: ../../include/conversation.php:944
+#: ../../include/conversation.php:1102 ../../include/conversation.php:1119
 msgid "Please enter a video link/URL:"
 msgstr "Bitte Link/URL zum Video einfügen:"
 
-#: ../../include/conversation.php:945
+#: ../../include/conversation.php:1103 ../../include/conversation.php:1120
 msgid "Please enter an audio link/URL:"
 msgstr "Bitte Link/URL zum Audio einfügen:"
 
-#: ../../include/conversation.php:946
+#: ../../include/conversation.php:1104 ../../include/conversation.php:1121
 msgid "Tag term:"
 msgstr "Tag:"
 
-#: ../../include/conversation.php:948
+#: ../../include/conversation.php:1106 ../../include/conversation.php:1123
 msgid "Where are you right now?"
 msgstr "Wo hältst du dich jetzt gerade auf?"
 
-#: ../../include/conversation.php:991
+#: ../../include/conversation.php:1166
 msgid "upload photo"
 msgstr "Bild hochladen"
 
-#: ../../include/conversation.php:993
+#: ../../include/conversation.php:1168
 msgid "attach file"
 msgstr "Datei anhängen"
 
-#: ../../include/conversation.php:995
+#: ../../include/conversation.php:1170
 msgid "web link"
 msgstr "Weblink"
 
-#: ../../include/conversation.php:996
+#: ../../include/conversation.php:1171
 msgid "Insert video link"
 msgstr "Video-Adresse einfügen"
 
-#: ../../include/conversation.php:997
+#: ../../include/conversation.php:1172
 msgid "video link"
 msgstr "Video-Link"
 
-#: ../../include/conversation.php:998
+#: ../../include/conversation.php:1173
 msgid "Insert audio link"
 msgstr "Audio-Adresse einfügen"
 
-#: ../../include/conversation.php:999
+#: ../../include/conversation.php:1174
 msgid "audio link"
 msgstr "Audio-Link"
 
-#: ../../include/conversation.php:1001
+#: ../../include/conversation.php:1176
 msgid "set location"
 msgstr "Ort setzen"
 
-#: ../../include/conversation.php:1003
+#: ../../include/conversation.php:1178
 msgid "clear location"
 msgstr "Ort löschen"
 
-#: ../../include/conversation.php:1010
+#: ../../include/conversation.php:1185
 msgid "permissions"
 msgstr "Zugriffsrechte"
 
-#: ../../boot.php:522
+#: ../../include/plugin.php:390 ../../include/plugin.php:392
+msgid "Click here to upgrade."
+msgstr "Zum Upgraden hier klicken."
+
+#: ../../include/plugin.php:398
+msgid "This action exceeds the limits set by your subscription plan."
+msgstr "Diese Aktion Ã¼berschreitet die Obergrenze deines Abonnements."
+
+#: ../../include/plugin.php:403
+msgid "This action is not available under your subscription plan."
+msgstr "Diese Aktion ist in deinem Abonnement nicht verfügbar."
+
+#: ../../boot.php:582
 msgid "Delete this item?"
 msgstr "Diesen Beitrag löschen?"
 
-#: ../../boot.php:525
+#: ../../boot.php:585
 msgid "show fewer"
 msgstr "weniger anzeigen"
 
-#: ../../boot.php:698
+#: ../../boot.php:792
 #, php-format
 msgid "Update %s failed. See error logs."
 msgstr "Update %s fehlgeschlagen. Bitte Fehlerprotokoll Ã¼berprüfen."
 
-#: ../../boot.php:700
+#: ../../boot.php:794
 #, php-format
 msgid "Update Error at %s"
 msgstr "Updatefehler bei %s"
 
-#: ../../boot.php:800
+#: ../../boot.php:895
 msgid "Create a New Account"
 msgstr "Neues Konto erstellen"
 
-#: ../../boot.php:824
+#: ../../boot.php:923
 msgid "Nickname or Email address: "
-msgstr "Spitzname oder Email-Adresse: "
+msgstr "Spitzname oder E-Mail-Adresse: "
 
-#: ../../boot.php:825
+#: ../../boot.php:924
 msgid "Password: "
 msgstr "Passwort: "
 
-#: ../../boot.php:828
+#: ../../boot.php:927
 msgid "Or login using OpenID: "
 msgstr "Oder melde dich mit deiner OpenID an: "
 
-#: ../../boot.php:834
+#: ../../boot.php:933
 msgid "Forgot your password?"
 msgstr "Passwort vergessen?"
 
-#: ../../boot.php:1001
+#: ../../boot.php:1100
 msgid "Edit profile"
 msgstr "Profil bearbeiten"
 
-#: ../../boot.php:1061
+#: ../../boot.php:1160
 msgid "Message"
 msgstr "Nachricht"
 
-#: ../../boot.php:1177 ../../boot.php:1253
+#: ../../boot.php:1282 ../../boot.php:1368
 msgid "g A l F d"
 msgstr "l, d. F G \\U\\h\\r"
 
-#: ../../boot.php:1178 ../../boot.php:1254
+#: ../../boot.php:1283 ../../boot.php:1369
 msgid "F d"
 msgstr "d. F"
 
-#: ../../boot.php:1223 ../../boot.php:1294
+#: ../../boot.php:1328 ../../boot.php:1409
 msgid "[today]"
 msgstr "[heute]"
 
-#: ../../boot.php:1235
+#: ../../boot.php:1340
 msgid "Birthday Reminders"
 msgstr "Geburtstagserinnerungen"
 
-#: ../../boot.php:1236
+#: ../../boot.php:1341
 msgid "Birthdays this week:"
 msgstr "Geburtstage diese Woche:"
 
-#: ../../boot.php:1287
+#: ../../boot.php:1402
 msgid "[No description]"
 msgstr "[keine Beschreibung]"
 
-#: ../../boot.php:1305
+#: ../../boot.php:1420
 msgid "Event Reminders"
 msgstr "Veranstaltungserinnerungen"
 
-#: ../../boot.php:1306
+#: ../../boot.php:1421
 msgid "Events this week:"
 msgstr "Veranstaltungen diese Woche"
 
-#: ../../boot.php:1511
+#: ../../boot.php:1638
 msgid "Status Messages and Posts"
 msgstr "Statusnachrichten und Beiträge"
 
-#: ../../boot.php:1517
+#: ../../boot.php:1645
 msgid "Profile Details"
 msgstr "Profildetails"
 
-#: ../../boot.php:1532
+#: ../../boot.php:1662
 msgid "Events and Calendar"
 msgstr "Ereignisse und Kalender"
 
-#: ../../boot.php:1538
+#: ../../boot.php:1669
 msgid "Only You Can See This"
-msgstr "Nur Du Kannst Das Sehen"
+msgstr "Nur du kannst das sehen"
index 206f4da957ea4d4f3c5dbf593e89eb1ff841cbca..c9e84ba23efd1c1b4bd7922e13c0e59b64156885 100644 (file)
@@ -11,7 +11,7 @@ $a->strings["Contact update failed."] = "Konnte den Kontakt nicht aktualisieren.
 $a->strings["Permission denied."] = "Zugriff verweigert.";
 $a->strings["Contact not found."] = "Kontakt nicht gefunden.";
 $a->strings["Repair Contact Settings"] = "Kontakteinstellungen reparieren";
-$a->strings["<strong>WARNING: This is highly advanced</strong> and if you enter incorrect information your communications with this contact may stop working."] = "<strong>ACHTUNG: Das sind Experten-Einstellungen!</strong> Wenn Du etwas Falsches eingibst, funktioniert die Kommunikation mit diesem Kontakt evtl. nicht mehr.";
+$a->strings["<strong>WARNING: This is highly advanced</strong> and if you enter incorrect information your communications with this contact may stop working."] = "<strong>ACHTUNG: Das sind Experten-Einstellungen!</strong> Wenn du etwas Falsches eingibst, funktioniert die Kommunikation mit diesem Kontakt evtl. nicht mehr.";
 $a->strings["Please use your browser 'Back' button <strong>now</strong> if you are uncertain what to do on this page."] = "Bitte nutze den Zurück-Button deines Browsers <strong>jetzt</strong>, wenn du dir unsicher bist, was du tun willst.";
 $a->strings["Return to contact editor"] = "Zurück zum Kontakteditor";
 $a->strings["Name"] = "Name";
@@ -33,7 +33,7 @@ $a->strings["File upload failed."] = "Hochladen der Datei fehlgeschlagen.";
 $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."] = "Ereignisbeschreibung und Startzeit sind erforderlich.";
+$a->strings["Event title and start time are required."] = "Der Veranstaltungstitel und die Anfangszeit müssen angegeben werden.";
 $a->strings["l, F j"] = "l, F j";
 $a->strings["Edit event"] = "Veranstaltung bearbeiten";
 $a->strings["link to source"] = "Link zum Originalbeitrag";
@@ -43,13 +43,15 @@ $a->strings["Previous"] = "Vorherige";
 $a->strings["Next"] = "Nächste";
 $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.";
+$a->strings["Format is %s %s. Starting date and Title are required."] = "Das Format ist %s %s. Beginnzeitpunkt und Titel werden benötigt.";
 $a->strings["Event Starts:"] = "Veranstaltungsbeginn:";
+$a->strings["Required"] = "Benötigt";
 $a->strings["Finish date/time is not known or not relevant"] = "Enddatum/-zeit ist nicht bekannt oder nicht relevant";
 $a->strings["Event Finishes:"] = "Veranstaltungsende:";
 $a->strings["Adjust for viewer timezone"] = "An Zeitzone des Betrachters anpassen";
 $a->strings["Description:"] = "Beschreibung";
 $a->strings["Location:"] = "Ort:";
+$a->strings["Title:"] = "Titel:";
 $a->strings["Share this event"] = "Veranstaltung teilen";
 $a->strings["Cancel"] = "Abbrechen";
 $a->strings["Tag removed"] = "Tag entfernt";
@@ -82,6 +84,8 @@ $a->strings["Image upload failed."] = "Hochladen des Bildes gescheitert.";
 $a->strings["Public access denied."] = "Öffentlicher Zugriff verweigert.";
 $a->strings["No photos selected"] = "Keine Bilder ausgewählt";
 $a->strings["Access to this item is restricted."] = "Zugriff zu diesem Eintrag wurde eingeschränkt.";
+$a->strings["You have used %1$.2f Mbytes of %2$.2f Mbytes photo storage."] = "Du verwendest %1$.2f Mbyte von %2$.2f Mbyte des Foto-Speichers.";
+$a->strings["You have used %1$.2f Mbytes of photo storage."] = "Du verwendest %1$.2f Mbyte des Foto-Speichers.";
 $a->strings["Upload Photos"] = "Bilder hochladen";
 $a->strings["New album name: "] = "Name des neuen Albums: ";
 $a->strings["or existing album name: "] = "oder existierender Albumname: ";
@@ -98,7 +102,8 @@ $a->strings["Private Message"] = "Private Nachricht";
 $a->strings["View Full Size"] = "Betrachte Originalgröße";
 $a->strings["Tags: "] = "Tags: ";
 $a->strings["[Remove any tag]"] = "[Tag entfernen]";
-$a->strings["Rotate CW"] = "Im Uhrzeigersinn rotieren";
+$a->strings["Rotate CW (right)"] = "Drehen US (rechts)";
+$a->strings["Rotate CCW (left)"] = "Drehen EUS (links)";
 $a->strings["New album name"] = "Name des neuen Albums";
 $a->strings["Caption"] = "Bildunterschrift";
 $a->strings["Add a Tag"] = "Tag hinzufügen";
@@ -167,7 +172,7 @@ $a->strings["Failed to update contact record."] = "Aktualisierung der Kontaktdat
 $a->strings["Your introduction has been sent."] = "Deine Kontaktanfrage wurde gesendet.";
 $a->strings["Please login to confirm introduction."] = "Bitte melde dich an, um die Kontaktanfrage zu bestätigen.";
 $a->strings["Incorrect identity currently logged in. Please login to <strong>this</strong> profile."] = "Momentan bist du mit einer anderen Identität angemeldet. Bitte melde Dich mit <strong>diesem</strong> Profil an.";
-$a->strings["Hide this contact"] = "Verberge diese Kontakt";
+$a->strings["Hide this contact"] = "Verberge diesen Kontakt";
 $a->strings["Welcome home %s."] = "Willkommen zurück %s.";
 $a->strings["Please confirm your introduction/connection request to %s."] = "Bitte bestätige deine Kontaktanfrage bei %s.";
 $a->strings["Confirm"] = "Bestätigen";
@@ -189,7 +194,7 @@ $a->strings["Submit Request"] = "Anfrage abschicken";
 $a->strings["Friendica Social Communications Server - Setup"] = "Friendica-Server für soziale Netzwerke â€“ Setup";
 $a->strings["Could not connect to database."] = "Verbindung zur Datenbank gescheitert";
 $a->strings["Could not create table."] = "Konnte Tabelle nicht erstellen.";
-$a->strings["Your Friendica site database has been installed."] = "Die Datenbank deiner Friendica Seite wurde installiert.";
+$a->strings["Your Friendica site database has been installed."] = "Die Datenbank deiner Friendicaseite wurde installiert.";
 $a->strings["You may need to import the file \"database.sql\" manually using phpmyadmin or mysql."] = "Möglicherweise musst du die Datei \"database.sql\" manuell mit phpmyadmin oder mysql importieren.";
 $a->strings["Please see the file \"INSTALL.txt\"."] = "Lies bitte die \"INSTALL.txt\".";
 $a->strings["System check"] = "Systemtest";
@@ -209,7 +214,7 @@ $a->strings["Site settings"] = "Server-Einstellungen";
 $a->strings["Could not find a command line version of PHP in the web server PATH."] = "Konnte keine Kommandozeilenversion von PHP im PATH des Servers finden.";
 $a->strings["If you don't have a command line version of PHP installed on server, you will not be able to run background polling via cron. See <a href='http://friendica.com/node/27'>'Activating scheduled tasks'</a>"] = "Wenn du keine Kommandozeilen Version von PHP auf deinem Server installiert hast, kannst du keine Hintergrundprozesse via cron starten. Siehe <a href='http://friendica.com/node/27'>'Activating scheduled tasks'</a>";
 $a->strings["PHP executable path"] = "Pfad zu PHP";
-$a->strings["Enter full path to php executable. You can leave this blank to continue the installation."] = "Gib den kompletten Pfad zur ausführbaren Datei von PHP an. Du kannst diesen Feld auch frei lassen und mit der Installation fortfahren.";
+$a->strings["Enter full path to php executable. You can leave this blank to continue the installation."] = "Gib den kompletten Pfad zur ausführbaren Datei von PHP an. Du kannst dieses Feld auch frei lassen und mit der Installation fortfahren.";
 $a->strings["Command line PHP"] = "Kommandozeilen-PHP";
 $a->strings["The command line version of PHP on your system does not have \"register_argc_argv\" enabled."] = "Die Kommandozeilenversion von PHP auf deinem System hat \"register_argc_argv\" nicht aktiviert.";
 $a->strings["This is required for message delivery to work."] = "Dies wird für die Auslieferung von Nachrichten benötigt.";
@@ -224,13 +229,13 @@ $a->strings["mysqli PHP module"] = "PHP: mysqli-Modul";
 $a->strings["mb_string PHP module"] = "PHP: mb_string-Modul";
 $a->strings["Apache mod_rewrite module"] = "Apache mod_rewrite module";
 $a->strings["Error: Apache webserver mod-rewrite module is required but not installed."] = "Fehler: Das Apache-Modul mod-rewrite wird benötigt, es ist allerdings nicht installiert.";
-$a->strings["Error: libCURL PHP module required but not installed."] = "Fehler: Das libCURL PHP Modul wird benötigt ist aber nicht installiert.";
+$a->strings["Error: libCURL PHP module required but not installed."] = "Fehler: Das libCURL PHP Modul wird benötigt, ist aber nicht installiert.";
 $a->strings["Error: GD graphics PHP module with JPEG support required but not installed."] = "Fehler: Das GD-Graphikmodul für PHP mit JPEG-Unterstützung ist nicht installiert.";
 $a->strings["Error: openssl PHP module required but not installed."] = "Fehler: Das openssl-Modul von PHP ist nicht installiert.";
 $a->strings["Error: mysqli PHP module required but not installed."] = "Fehler: Das mysqli-Modul von PHP ist nicht installiert.";
 $a->strings["Error: mb_string PHP module required but not installed."] = "Fehler: mb_string PHP Module wird benötigt ist aber nicht installiert.";
 $a->strings["The web installer needs to be able to create a file called \".htconfig.php\ in the top folder of your web server and it is unable to do so."] = "Der Installationswizard muss in der Lage sein, eine Datei im Stammverzeichnis deines Webservers anzulegen, ist allerdings derzeit nicht in der Lage, dies zu tun.";
-$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."] = "In den meisten Fällen ist dies ein Problem mit den Schreibrechten, der Webserver könnte keine Schreiberlaubnis haben, selbst wenn du sie hast.";
+$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."] = "In den meisten Fällen ist dies ein Problem mit den Schreibrechten. Der Webserver könnte keine Schreiberlaubnis haben, selbst wenn du sie hast.";
 $a->strings["At the end of this procedure, we will give you a text to save in a file named .htconfig.php in your Friendica top folder."] = "Nachdem du alles ausgefüllt hast, erhältst du einen Text, den du in eine Datei namens .htconfig.php in deinem Friendica-Wurzelverzeichnis kopieren musst.";
 $a->strings["You can alternatively skip this procedure and perform a manual installation. Please see the file \"INSTALL.txt\" for instructions."] = "Alternativ kannst du diesen Schritt aber auch Ã¼berspringen und die Installation manuell durchführen. Eine Anleitung dazu (Englisch) findest du in der Datei INSTALL.txt.";
 $a->strings[".htconfig.php is writable"] = "Schreibrechte auf .htconfig.php";
@@ -247,6 +252,11 @@ $a->strings["UTC time: %s"] = "UTC Zeit: %s";
 $a->strings["Current timezone: %s"] = "Aktuelle Zeitzone: %s";
 $a->strings["Converted localtime: %s"] = "Umgerechnete lokale Zeit: %s";
 $a->strings["Please select your timezone:"] = "Bitte wähle deine Zeitzone.";
+$a->strings["Poke/Prod"] = "Anstupsen etc.";
+$a->strings["poke, prod or do other things to somebody"] = "Stupse Leute an oder mache anderes mit ihnen";
+$a->strings["Recipient"] = "Empfänger";
+$a->strings["Choose what you wish to do to recipient"] = "Was willst du mit dem Empfänger machen:";
+$a->strings["Make this post private"] = "Diesen Beitrag privat machen";
 $a->strings["Profile Match"] = "Profilübereinstimmungen";
 $a->strings["No keywords to match. Please add keywords to your default profile."] = "Keine Schlüsselwörter zum Abgleichen gefunden. Bitte füge einige Schlüsselwörter zu deinem Standardprofil hinzu.";
 $a->strings["is interested in:"] = "ist interessiert an:";
@@ -254,6 +264,39 @@ $a->strings["Connect"] = "Verbinden";
 $a->strings["No matches"] = "Keine Ãœbereinstimmungen";
 $a->strings["Remote privacy information not available."] = "Entfernte Privatsphäreneinstellungen nicht verfügbar.";
 $a->strings["Visible to:"] = "Sichtbar für:";
+$a->strings["No such group"] = "Es gibt keine solche Gruppe";
+$a->strings["Group is empty"] = "Gruppe ist leer";
+$a->strings["Group: "] = "Gruppe: ";
+$a->strings["Select"] = "Auswählen";
+$a->strings["View %s's profile @ %s"] = "Das Profil von %s auf %s betrachten.";
+$a->strings["%s from %s"] = "%s von %s";
+$a->strings["View in context"] = "Im Zusammenhang betrachten";
+$a->strings["%d comment"] = array(
+       0 => "%d Kommentar",
+       1 => "%d Kommentare",
+);
+$a->strings["show more"] = "mehr anzeigen";
+$a->strings["like"] = "mag ich";
+$a->strings["dislike"] = "mag ich nicht";
+$a->strings["Share this"] = "Weitersagen";
+$a->strings["share"] = "Teilen";
+$a->strings["Bold"] = "Fett";
+$a->strings["Italic"] = "Kursiv";
+$a->strings["Underline"] = "Unterstrichen";
+$a->strings["Quote"] = "Zitat";
+$a->strings["Code"] = "Code";
+$a->strings["Image"] = "Bild";
+$a->strings["Link"] = "Verweis";
+$a->strings["Video"] = "Video";
+$a->strings["add star"] = "markieren";
+$a->strings["remove star"] = "Markierung entfernen";
+$a->strings["toggle star status"] = "Markierung umschalten";
+$a->strings["starred"] = "markiert";
+$a->strings["add tag"] = "Tag hinzufügen";
+$a->strings["save to folder"] = "In Ordner speichern";
+$a->strings["to"] = "zu";
+$a->strings["Wall-to-Wall"] = "Wall-to-Wall";
+$a->strings["via Wall-To-Wall:"] = "via Wall-To-Wall:";
 $a->strings["Welcome to %s"] = "Willkommen zu %s";
 $a->strings["Invalid request identifier."] = "Invalid request identifier.";
 $a->strings["Discard"] = "Verwerfen";
@@ -315,7 +358,7 @@ $a->strings["Never"] = "Niemals";
 $a->strings["(Update was successful)"] = "(Aktualisierung war erfolgreich)";
 $a->strings["(Update was not successful)"] = "(Aktualisierung war nicht erfolgreich)";
 $a->strings["Suggest friends"] = "Kontakte vorschlagen";
-$a->strings["Network type: %s"] = "Netzwerk Typ: %s";
+$a->strings["Network type: %s"] = "Netzwerktyp: %s";
 $a->strings["%d contact in common"] = array(
        0 => "%d gemeinsamer Kontakt",
        1 => "%d gemeinsame Kontakte",
@@ -326,7 +369,7 @@ $a->strings["Block"] = "Sperren";
 $a->strings["Toggle Blocked status"] = "Geblockt-Status ein-/ausschalten";
 $a->strings["Unignore"] = "Ignorieren aufheben";
 $a->strings["Toggle Ignored status"] = "Ignoriert-Status ein-/ausschalten";
-$a->strings["Unarchive"] = "Unarchivieren";
+$a->strings["Unarchive"] = "Aus Archiv zurückholen";
 $a->strings["Archive"] = "Archivieren";
 $a->strings["Toggle Archive status"] = "Archiviert-Status ein-/ausschalten";
 $a->strings["Repair"] = "Reparieren";
@@ -336,7 +379,7 @@ $a->strings["Contact Editor"] = "Kontakt Editor";
 $a->strings["Profile Visibility"] = "Profil-Sichtbarkeit";
 $a->strings["Please choose the profile you would like to display to %s when viewing your profile securely."] = "Bitte wähle eines deiner Profile das angezeigt werden soll, wenn %s dein Profil aufruft.";
 $a->strings["Contact Information / Notes"] = "Kontakt Informationen / Notizen";
-$a->strings["Edit contact notes"] = "Notizen zum Kontakt bearbiten";
+$a->strings["Edit contact notes"] = "Notizen zum Kontakt bearbeiten";
 $a->strings["Visit %s's profile [%s]"] = "Besuche %ss Profil [%s]";
 $a->strings["Block/Unblock contact"] = "Kontakt blockieren/freischalten";
 $a->strings["Ignore contact"] = "Ignoriere den Kontakt";
@@ -384,8 +427,8 @@ $a->strings["Save or copy your new password - and then"] = "Speichere oder kopie
 $a->strings["click here to login"] = "hier klicken, um dich anzumelden";
 $a->strings["Your password may be changed from the <em>Settings</em> page after successful login."] = "Du kannst das Passwort in den <em>Einstellungen</em> Ã¤ndern, sobald du dich erfolgreich angemeldet hast.";
 $a->strings["Forgot your Password?"] = "Hast du dein Passwort vergessen?";
-$a->strings["Enter your email address and submit to have your password reset. Then check your email for further instructions."] = "Gib deine Email-Adresse an und fordere ein neues Passwort an. Es werden dir dann weitere Informationen per Mail zugesendet.";
-$a->strings["Nickname or Email: "] = "Spitzname oder Email:";
+$a->strings["Enter your email address and submit to have your password reset. Then check your email for further instructions."] = "Gib deine E-Mail-Adresse an und fordere ein neues Passwort an. Es werden dir dann weitere Informationen per Mail zugesendet.";
+$a->strings["Nickname or Email: "] = "Spitzname oder E-Mail:";
 $a->strings["Reset"] = "Zurücksetzen";
 $a->strings["Account settings"] = "Kontoeinstellungen";
 $a->strings["Display settings"] = "Anzeige-Einstellungen";
@@ -398,7 +441,7 @@ $a->strings["Settings"] = "Einstellungen";
 $a->strings["Missing some important data!"] = "Wichtige Daten fehlen!";
 $a->strings["Update"] = "Aktualisierungen";
 $a->strings["Failed to connect with email account using the settings provided."] = "Verbindung zum E-Mail-Konto mit den angegebenen Einstellungen nicht möglich.";
-$a->strings["Email settings updated."] = "EMail Einstellungen bearbeitet.";
+$a->strings["Email settings updated."] = "E-Mail Einstellungen bearbeitet.";
 $a->strings["Passwords do not match. Password unchanged."] = "Die Passwörter stimmen nicht Ã¼berein. Das Passwort bleibt unverändert.";
 $a->strings["Empty passwords are not allowed. Password unchanged."] = "Leere Passwörter sind nicht erlaubt. Passwort bleibt unverändert.";
 $a->strings["Password changed."] = "Passwort Ã¤ndern.";
@@ -426,11 +469,11 @@ $a->strings["Built-in support for %s connectivity is %s"] = "Eingebaute Unterst
 $a->strings["enabled"] = "eingeschaltet";
 $a->strings["disabled"] = "ausgeschaltet";
 $a->strings["StatusNet"] = "StatusNet";
+$a->strings["Email access is disabled on this site."] = "Zugriff auf E-Mails für diese Seite deaktiviert.";
 $a->strings["Connector Settings"] = "Verbindungs-Einstellungen";
 $a->strings["Email/Mailbox Setup"] = "E-Mail/Postfach-Einstellungen";
 $a->strings["If you wish to communicate with email contacts using this service (optional), please specify how to connect to your mailbox."] = "Wenn du mit E-Mail-Kontakten Ã¼ber diesen Service kommunizieren möchtest (optional), gib bitte die Einstellungen für dein Postfach an.";
-$a->strings["Last successful email check:"] = "Letzter erfolgreicher Email Check";
-$a->strings["Email access is disabled on this site."] = "Zugriff auf E-Mails für diese Seite deaktiviert.";
+$a->strings["Last successful email check:"] = "Letzter erfolgreicher E-Mail Check";
 $a->strings["IMAP server name:"] = "IMAP-Server-Name:";
 $a->strings["IMAP port:"] = "IMAP-Port:";
 $a->strings["Security:"] = "Sicherheit:";
@@ -512,6 +555,7 @@ $a->strings["Someone writes a followup comment"] = "– jemand auch einen Kommen
 $a->strings["You receive a private message"] = "– du eine private Nachricht erhältst";
 $a->strings["You receive a friend suggestion"] = "– du eine Empfehlung erhältst";
 $a->strings["You are tagged in a post"] = "– du in einem Beitrag erwähnt wirst";
+$a->strings["You are poked/prodded/etc. in a post"] = "– du von jemandem angestupst oder sonstwie behandelt wirst";
 $a->strings["Advanced Account/Page Type Settings"] = "Erweiterte Konto-/Seitentyp-Einstellungen";
 $a->strings["Change the behaviour of this account for special situations"] = "Verhalten dieses Kontos in bestimmten Situationen:";
 $a->strings["Manage Identities and/or Pages"] = "Verwalte Identitäten und/oder Seiten";
@@ -525,7 +569,7 @@ $a->strings["Commented Order"] = "Neueste Kommentare";
 $a->strings["Sort by Comment Date"] = "Nach Kommentardatum sortieren";
 $a->strings["Posted Order"] = "Neueste Beiträge";
 $a->strings["Sort by Post Date"] = "Nach Beitragsdatum sortieren";
-$a->strings["Posts that mention or involve you"] = "Beiträge, in denen es um Dich geht";
+$a->strings["Posts that mention or involve you"] = "Beiträge, in denen es um dich geht";
 $a->strings["New"] = "Neue";
 $a->strings["Activity Stream - by date"] = "Aktivitäten-Stream - nach Datum";
 $a->strings["Starred"] = "Markierte";
@@ -537,9 +581,6 @@ $a->strings["Warning: This group contains %s member from an insecure network."]
        1 => "Warnung: Diese Gruppe beinhaltet %s Personen aus unsicheren Netzwerken.",
 );
 $a->strings["Private messages to this group are at risk of public disclosure."] = "Private Nachrichten an diese Gruppe könnten an die Ã–ffentlichkeit geraten.";
-$a->strings["No such group"] = "Es gibt keine solche Gruppe";
-$a->strings["Group is empty"] = "Gruppe ist leer";
-$a->strings["Group: "] = "Gruppe: ";
 $a->strings["Contact: "] = "Kontakt: ";
 $a->strings["Private messages to this person are at risk of public disclosure."] = "Private Nachrichten an diese Person könnten an die Ã–ffentlichkeit gelangen.";
 $a->strings["Invalid contact."] = "Ungültiger Kontakt.";
@@ -560,10 +601,10 @@ $a->strings["Subject:"] = "Betreff:";
 $a->strings["Your message:"] = "Deine Nachricht:";
 $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. 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 für Dich an Deiner Pinnwand für zwei Wochen nach dem Registrierungsdatum sichtbar und wird dann verschwinden.";
-$a->strings["On your <em>Quick Start</em> page - find a brief introduction to your profile and network tabs, connect to Facebook, make some new connections, and find some groups to join."] = "Auf der <em>Quick Start</em> Seite findest du eine kurze Einleitung in die einzelnen Funktionen deines Profils und die Netzwerk-Reiter, wo du interessante Foren findest, wie du alte Freunde von Facebook wieder findest und neue Kontakte knüpfst.";
-$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ötigt, um Freundschaften 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 als wenn Du Deine Telefonnummer nicht ins Telefonbuch einträgst. Im Allgemeinen solltest du es veröffentlichen - außer all deine Freunde und potentiellen Freunde wissen genau, wie sie dich finden können.";
+$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 für dich an Deiner Pinnwand für zwei Wochen nach dem Registrierungsdatum sichtbar und wird dann verschwinden.";
+$a->strings["On your <em>Quick Start</em> page - find a brief introduction to your profile and network tabs, make some new connections, and find some groups to join."] = "Auf der <em>Quick Start</em> Seite findest du eine kurze Einleitung in die einzelnen Funktionen deines Profils und die Netzwerk-Reiter, wo du interessante Foren findest und neue Kontakte knüpfst.";
+$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 Identifikationsadresse. Diese sieht aus wie eine E-Mail-Adresse und wird benötigt, um Freundschaften 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 als wenn du deine Telefonnummer nicht ins Telefonbuch einträgst. Im Allgemeinen solltest du es veröffentlichen - außer all deine Freunde und potentiellen Freunde wissen genau, wie sie dich finden können.";
 $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.";
@@ -615,7 +656,7 @@ $a->strings["Your Email Address: "] = "Deine E-Mail-Adresse: ";
 $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>'."] = "Wähle einen Spitznamen für dein Profil. Dieser muss mit einem Buchstaben beginnen. Die Adresse deines Profils auf dieser Seite wird '<strong>spitzname@\$sitename</strong>' sein.";
 $a->strings["Choose a nickname: "] = "Spitznamen wählen: ";
 $a->strings["Register"] = "Registrieren";
-$a->strings["People Search"] = "Personen Suche";
+$a->strings["People Search"] = "Personensuche";
 $a->strings["status"] = "Status";
 $a->strings["%1\$s likes %2\$s's %3\$s"] = "%1\$s mag %2\$ss %3\$s";
 $a->strings["%1\$s doesn't like %2\$s's %3\$s"] = "%1\$s mag %2\$ss %3\$s nicht";
@@ -634,6 +675,9 @@ $a->strings["This message was sent to you by %s, a member of the Friendica socia
 $a->strings["You may visit them online at %s"] = "Du kannst sie online unter %s besuchen";
 $a->strings["Please contact the sender by replying to this post if you do not wish to receive these messages."] = "Falls du diese Beiträge nicht erhalten möchtest, kontaktiere bitte den Autor, indem du auf diese Nachricht antwortest.";
 $a->strings["%s posted an update."] = "%s hat ein Update veröffentlicht.";
+$a->strings["%1\$s is currently %2\$s"] = "%1\$s ist momentan %2\$s";
+$a->strings["Mood"] = "Stimmung";
+$a->strings["Set your current mood and tell your friends"] = "Wähle deine aktuelle Stimmung und erzähle sie deinen Freunden";
 $a->strings["Image uploaded but image cropping failed."] = "Bilder hochgeladen, aber das Zuschneiden ist fehlgeschlagen.";
 $a->strings["Image size reduction [%s] failed."] = "Verkleinern der Bildgröße von [%s] ist gescheitert.";
 $a->strings["Shift-reload the page or clear browser cache if the new photo does not display immediately."] = "Drücke Umschalt+Neu Laden oder leere den Browser-Cache, falls das neue Foto nicht gleich angezeigt wird.";
@@ -659,7 +703,7 @@ $a->strings["Conversation removed."] = "Unterhaltung gelöscht.";
 $a->strings["No messages."] = "Keine Nachrichten.";
 $a->strings["Unknown sender - %s"] = "'Unbekannter Absender - %s";
 $a->strings["You and %s"] = "Du und %s";
-$a->strings["%s and You"] = "%s und Du";
+$a->strings["%s and You"] = "%s und du";
 $a->strings["Delete conversation"] = "Unterhaltung löschen";
 $a->strings["D, d M Y - g:i A"] = "D, d. M Y - g:i A";
 $a->strings["%d message"] = array(
@@ -686,6 +730,8 @@ $a->strings["Normal Account"] = "Normales Konto";
 $a->strings["Soapbox Account"] = "Marktschreier-Konto";
 $a->strings["Community/Celebrity Account"] = "Forum/Promi-Konto";
 $a->strings["Automatic Friend Account"] = "Automatisches Freundekonto";
+$a->strings["Blog Account"] = "Blog Account";
+$a->strings["Private Forum"] = "Privates Forum";
 $a->strings["Message queues"] = "Nachrichten-Warteschlangen";
 $a->strings["Administration"] = "Administration";
 $a->strings["Summary"] = "Zusammenfassung";
@@ -694,6 +740,7 @@ $a->strings["Pending registrations"] = "Anstehende Anmeldungen";
 $a->strings["Version"] = "Version";
 $a->strings["Active plugins"] = "Aktive Plugins";
 $a->strings["Site settings updated."] = "Seiteneinstellungen aktualisiert.";
+$a->strings["Don't apply a special theme for mobile devices."] = "Kein spezielles Theme für mobile Geräte verwenden.";
 $a->strings["Closed"] = "Geschlossen";
 $a->strings["Requires approval"] = "Bedarf der Zustimmung";
 $a->strings["Open"] = "Offen";
@@ -708,6 +755,8 @@ $a->strings["Banner/Logo"] = "Banner/Logo";
 $a->strings["System language"] = "Systemsprache";
 $a->strings["System theme"] = "Systemweites Thema";
 $a->strings["Default system theme - may be over-ridden by user profiles - <a href='#' id='cnftheme'>change theme settings</a>"] = "Vorgabe für das System-Theme - kann von Benutzerprofilen Ã¼berschrieben werden - <a href='#' id='cnftheme'>Theme-Einstellungen Ã¤ndern</a>";
+$a->strings["Mobile system theme"] = "Systemweites mobiles Thema";
+$a->strings["Theme for mobile devices"] = "Thema für mobile Geräte";
 $a->strings["SSL link policy"] = "Regeln für SSL Links";
 $a->strings["Determines whether generated links should be forced to use SSL"] = "Bestimmt, ob generierte Links SSL verwenden müssen";
 $a->strings["Maximum image size"] = "Maximale Größe von Bildern";
@@ -719,7 +768,7 @@ $a->strings["Accounts abandoned after x days"] = "Nutzerkonten gelten nach x Tag
 $a->strings["Will not waste system resources polling external sites for abandonded accounts. Enter 0 for no time limit."] = "Verschwende keine System-Ressourcen auf das Pollen externer Seiten, wenn Konten nicht mehr benutzt werden. 0 eingeben für kein Limit.";
 $a->strings["Allowed friend domains"] = "Erlaubte Domains für Kontakte";
 $a->strings["Comma separated list of domains which are allowed to establish friendships with this site. Wildcards are accepted. Empty to allow any domains"] = "Liste der Domains, die für Freundschaften erlaubt sind, durch Kommas getrennt. Platzhalter werden akzeptiert. Leer lassen, um alle Domains zu erlauben.";
-$a->strings["Allowed email domains"] = "Erlaubte Domains für Emails";
+$a->strings["Allowed email domains"] = "Erlaubte Domains für E-Mails";
 $a->strings["Comma separated list of domains which are allowed in email addresses for registrations to this site. Wildcards are accepted. Empty to allow any domains"] = "Liste der Domains, die für E-Mail-Adressen bei der Registrierung erlaubt sind, durch Kommas getrennt. Platzhalter werden akzeptiert. Leer lassen, um alle Domains zu erlauben.";
 $a->strings["Block public"] = "Öffentlichen Zugriff blockieren";
 $a->strings["Check to block public access to all otherwise public personal pages on this site unless you are currently logged in."] = "Klicken, um Ã¶ffentlichen Zugriff auf sonst Ã¶ffentliche Profile zu blockieren, wenn man nicht eingeloggt ist.";
@@ -727,6 +776,8 @@ $a->strings["Force publish"] = "Erzwinge Veröffentlichung";
 $a->strings["Check to force all profiles on this site to be listed in the site directory."] = "Klicken, um Anzeige aller Profile dieses Servers im Verzeichnis zu erzwingen.";
 $a->strings["Global directory update URL"] = "URL für Updates beim weltweiten Verzeichnis";
 $a->strings["URL to update the global directory. If this is not set, the global directory is completely unavailable to the application."] = "URL für Update des globalen Verzeichnisses. Wenn nichts eingetragen ist, bleibt das globale Verzeichnis unerreichbar.";
+$a->strings["Allow threaded items"] = "Erlaube Threads in Diskussionen";
+$a->strings["Allow infinite level threading for items on this site."] = "Erlaube ein unendliches Level für Threads auf dieser Seite.";
 $a->strings["Block multiple registrations"] = "Unterbinde Mehrfachregistrierung";
 $a->strings["Disallow users to register additional accounts for use as pages."] = "Benutzern nicht erlauben, weitere Konten als zusätzliche Profile anzulegen.";
 $a->strings["OpenID support"] = "OpenID Unterstützung";
@@ -779,7 +830,7 @@ $a->strings["User '%s' blocked"] = "Nutzer '%s' gesperrt";
 $a->strings["select all"] = "Alle auswählen";
 $a->strings["User registrations waiting for confirm"] = "Neuanmeldungen, die auf deine Bestätigung warten";
 $a->strings["Request date"] = "Anfragedatum";
-$a->strings["Email"] = "Email";
+$a->strings["Email"] = "E-Mail";
 $a->strings["No registrations."] = "Keine Neuanmeldungen.";
 $a->strings["Deny"] = "Verwehren";
 $a->strings["Register date"] = "Anmeldedatum";
@@ -830,6 +881,7 @@ $a->strings["Login failed."] = "Anmeldung fehlgeschlagen.";
 $a->strings["Contact added"] = "Kontakt hinzugefügt";
 $a->strings["Common Friends"] = "Gemeinsame Freunde";
 $a->strings["No contacts in common."] = "Keine gemeinsamen Kontakte.";
+$a->strings["link"] = "Link";
 $a->strings["Item has been removed."] = "Eintrag wurde entfernt.";
 $a->strings["Applications"] = "Anwendungen";
 $a->strings["No installed applications."] = "Keine Applikationen installiert.";
@@ -838,6 +890,8 @@ $a->strings["Profile not found."] = "Profil nicht gefunden.";
 $a->strings["Profile Name is required."] = "Profilname ist erforderlich.";
 $a->strings["Marital Status"] = "Familienstand";
 $a->strings["Romantic Partner"] = "Romanze";
+$a->strings["Likes"] = "Likes";
+$a->strings["Dislikes"] = "Dislikes";
 $a->strings["Work/Employment"] = "Arbeit / Beschäftigung";
 $a->strings["Religion"] = "Religion";
 $a->strings["Political Views"] = "Politische Ansichten";
@@ -884,6 +938,8 @@ $a->strings["Political Views:"] = "Politische Ansichten:";
 $a->strings["Religious Views:"] = "Religiöse Ansichten:";
 $a->strings["Public Keywords:"] = "Öffentliche Schlüsselwörter:";
 $a->strings["Private Keywords:"] = "Private Schlüsselwörter:";
+$a->strings["Likes:"] = "Likes:";
+$a->strings["Dislikes:"] = "Dislikes:";
 $a->strings["Example: fishing photography software"] = "Beispiel: Fischen Fotografie Software";
 $a->strings["(Used for suggesting potential friends, can be seen by others)"] = "(Wird verwendet, um potentielle Freunde zu finden, könnte von Fremden eingesehen werden)";
 $a->strings["(Used for searching profiles, never shown to others)"] = "(Wird für die Suche nach Profilen verwendet und niemals veröffentlicht)";
@@ -916,6 +972,17 @@ $a->strings["Existing Page Delegates"] = "Vorhandene Bevollmächtigte für die S
 $a->strings["Potential Delegates"] = "Potentielle Bevollmächtigte";
 $a->strings["Add"] = "Hinzufügen";
 $a->strings["No entries."] = "Keine Einträge";
+$a->strings["Source (bbcode) text:"] = "Quelle (bbcode) Text:";
+$a->strings["Source (Diaspora) text to convert to BBcode:"] = "Eingabe (Diaspora) Nach BBCode zu konvertierender Text:";
+$a->strings["Source input: "] = "Originaltext:";
+$a->strings["bb2html: "] = "bb2html: ";
+$a->strings["bb2html2bb: "] = "bb2html2bb: ";
+$a->strings["bb2md: "] = "bb2md: ";
+$a->strings["bb2md2html: "] = "bb2md2html: ";
+$a->strings["bb2dia2bb: "] = "bb2dia2bb: ";
+$a->strings["bb2md2html2bb: "] = "bb2md2html2bb: ";
+$a->strings["Source input (Diaspora format): "] = "Texteingabe (Diaspora Format): ";
+$a->strings["diaspora2bb: "] = "diaspora2bb: ";
 $a->strings["Friend Suggestions"] = "Kontaktvorschläge";
 $a->strings["No suggestions available. If this is a new site, please try again in 24 hours."] = "Keine Vorschläge. Falls der Server frisch aufgesetzt wurde, versuche es bitte in 24 Stunden noch einmal.";
 $a->strings["Ignore/Hide"] = "Ignorieren/Verbergen";
@@ -923,9 +990,13 @@ $a->strings["Global Directory"] = "Weltweites Verzeichnis";
 $a->strings["Find on this site"] = "Auf diesem Server suchen";
 $a->strings["Site Directory"] = "Verzeichnis";
 $a->strings["Gender: "] = "Geschlecht:";
+$a->strings["Gender:"] = "Geschlecht:";
+$a->strings["Status:"] = "Status:";
+$a->strings["Homepage:"] = "Homepage:";
+$a->strings["About:"] = "Ãœber:";
 $a->strings["No entries (some entries may be hidden)."] = "Keine Einträge (einige Einträge könnten versteckt sein).";
 $a->strings["%s : Not a valid email address."] = "%s: Keine gültige Email Adresse.";
-$a->strings["Please join us on Friendica"] = "Bitte trete uns auf Friendica bei";
+$a->strings["Please join us on Friendica"] = "Bitte trete bei uns auf Friendica bei";
 $a->strings["%s : Message delivery failed."] = "%s: Zustellung der Nachricht fehlgeschlagen.";
 $a->strings["%d message sent."] = array(
        0 => "%d Nachricht gesendet.",
@@ -935,7 +1006,7 @@ $a->strings["You have no more invitations available"] = "Du hast keine weiteren
 $a->strings["Visit %s for a list of public sites that you can join. Friendica members on other sites can all connect with each other, as well as with members of many other social networks."] = "Besuche %s für eine Liste der Ã¶ffentlichen Server, denen du beitreten kannst. Friendica Mitglieder unterschiedlicher Server können sich sowohl alle miteinander verbinden, als auch mit Mitgliedern anderer Sozialer Netzwerke.";
 $a->strings["To accept this invitation, please visit and register at %s or any other public Friendica website."] = "Um diese Kontaktanfrage zu akzeptieren, besuche und registriere dich bitte bei %s oder einer anderen Ã¶ffentlichen Friendica Website.";
 $a->strings["Friendica sites all inter-connect to create a huge privacy-enhanced social web that is owned and controlled by its members. They can also connect with many traditional social networks. See %s for a list of alternate Friendica sites you can join."] = "Friendica Server verbinden sich alle untereinander, um ein großes datenschutzorientiertes Soziales Netzwerk zu bilden, das von seinen Mitgliedern betrieben und kontrolliert wird. Sie können sich auch mit vielen Ã¼blichen Sozialen Netzwerken verbinden. Besuche %s für eine Liste alternativer Friendica Server, denen du beitreten kannst.";
-$a->strings["Our apologies. This system is not currently configured to connect with other public sites or invite members."] = "Es tut uns Leid. Dieses System ist zurzeit nicht dafür konfiguriert, sich mit anderen Ã¶ffentlichen Seiten zu verbinden oder Mitglieder einzuladen.";
+$a->strings["Our apologies. This system is not currently configured to connect with other public sites or invite members."] = "Es tut uns leid. Dieses System ist zurzeit nicht dafür konfiguriert, sich mit anderen Ã¶ffentlichen Seiten zu verbinden oder Mitglieder einzuladen.";
 $a->strings["Send invitations"] = "Einladungen senden";
 $a->strings["Enter email addresses, one per line:"] = "E-Mail-Adressen eingeben, eine pro Zeile:";
 $a->strings["You are cordially invited to join me and other close friends on Friendica - and help us to create a better social web."] = "Du bist herzlich dazu eingeladen, dich mir und anderen guten Freunden auf Friendica anzuschließen - und ein besseres Soziales Netz aufzubauen.";
@@ -948,11 +1019,11 @@ $a->strings["Unexpected response from remote site: "] = "Unerwartete Antwort der
 $a->strings["Confirmation completed successfully."] = "Bestätigung erfolgreich abgeschlossen.";
 $a->strings["Remote site reported: "] = "Gegenstelle meldet: ";
 $a->strings["Temporary failure. Please wait and try again."] = "Zeitweiser Fehler. Bitte warte einige Momente und versuche es dann noch einmal.";
-$a->strings["Introduction failed or was revoked."] = "Kontaktanfrage schlug fehl oder wurde zurück gezogen.";
+$a->strings["Introduction failed or was revoked."] = "Kontaktanfrage schlug fehl oder wurde zurückgezogen.";
 $a->strings["Unable to set contact photo."] = "Konnte das Bild des Kontakts nicht speichern.";
 $a->strings["%1\$s is now friends with %2\$s"] = "%1\$s ist nun mit %2\$s befreundet";
 $a->strings["No user record found for '%s' "] = "Für '%s' wurde kein Nutzer gefunden";
-$a->strings["Our site encryption key is apparently messed up."] = "Der Verschlüsselungsschlüssel unserer Seite ist anscheinend im Arsch.";
+$a->strings["Our site encryption key is apparently messed up."] = "Der Verschlüsselungsschlüssel unserer Seite ist anscheinend nicht in Ordnung.";
 $a->strings["Empty site URL was provided or URL could not be decrypted by us."] = "Leere URL für die Seite erhalten oder die URL konnte nicht entschlüsselt werden.";
 $a->strings["Contact record was not found for you on our site."] = "Für diesen Kontakt wurde auf unserer Seite kein Eintrag gefunden.";
 $a->strings["Site public key not available in contact record for URL %s."] = "Die Kontaktdaten für URL %s enthalten keinen Public Key für den Server.";
@@ -961,23 +1032,27 @@ $a->strings["Unable to set your contact credentials on our system."] = "Deine Ko
 $a->strings["Unable to update your contact profile details on our system"] = "Die Updates für dein Profil konnten nicht gespeichert werden";
 $a->strings["Connection accepted at %s"] = "Auf %s wurde die Verbindung akzeptiert";
 $a->strings["%1\$s has joined %2\$s"] = "%1\$s ist %2\$s beigetreten";
+$a->strings["Google+ Import Settings"] = "Google+ Import Einstellungen";
+$a->strings["Enable Google+ Import"] = "Aktiviere Google+ Import";
+$a->strings["Google Account ID"] = "Google Account ID";
+$a->strings["Google+ Import Settings saved."] = "Google+ Import Einstellungen gespeichert.";
 $a->strings["Facebook disabled"] = "Facebook deaktiviert";
 $a->strings["Updating contacts"] = "Aktualisiere Kontakte";
 $a->strings["Facebook API key is missing."] = "Facebook-API-Schlüssel nicht gefunden";
 $a->strings["Facebook Connect"] = "Mit Facebook verbinden";
 $a->strings["Install Facebook connector for this account."] = "Facebook-Connector für dieses Konto installieren.";
 $a->strings["Remove Facebook connector"] = "Facebook-Connector entfernen";
-$a->strings["Re-authenticate [This is necessary whenever your Facebook password is changed.]"] = "Neu authentifizieren [Das ist immer dann nötig, wenn Du Dein Facebook-Passwort geändert hast.]";
+$a->strings["Re-authenticate [This is necessary whenever your Facebook password is changed.]"] = "Neu authentifizieren [Das ist immer dann nötig, wenn du dein Facebook-Passwort geändert hast.]";
 $a->strings["Post to Facebook by default"] = "Veröffentliche standardmäßig bei Facebook";
 $a->strings["Facebook friend linking has been disabled on this site. The following settings will have no effect."] = "Das Verlinken von Facebookkontakten wurde auf dieser Seite deaktiviert. Die folgenden Einstellungen haben keinen Effekt.";
 $a->strings["Facebook friend linking has been disabled on this site. If you disable it, you will be unable to re-enable it."] = "Das Verlinken von Facebookkontakten wurde auf dieser Seite deaktiviert. Wenn du es ausgeschaltet hast, kannst du es nicht wieder aktivieren.";
 $a->strings["Link all your Facebook friends and conversations on this website"] = "All meine Facebook-Kontakte und -Konversationen hier auf diese Website importieren";
 $a->strings["Facebook conversations consist of your <em>profile wall</em> and your friend <em>stream</em>."] = "Facebook-Konversationen bestehen aus deinen Beiträgen auf deiner<em>Pinnwand</em>, sowie den Beiträgen deiner Freunde <em>Stream</em>.";
 $a->strings["On this website, your Facebook friend stream is only visible to you."] = "Hier auf dieser Webseite kannst nur du die Beiträge Deiner Facebook-Freunde (Stream) sehen.";
-$a->strings["The following settings determine the privacy of your Facebook profile wall on this website."] = "Mit den folgenden Einstellungen kannst Du die Privatsphäre der Kopie Deiner Facebook-Pinnwand hier auf dieser Seite einstellen.";
+$a->strings["The following settings determine the privacy of your Facebook profile wall on this website."] = "Mit den folgenden Einstellungen kannst du die Privatsphäre der Kopie Deiner Facebook-Pinnwand hier auf dieser Seite einstellen.";
 $a->strings["On this website your Facebook profile wall conversations will only be visible to you"] = "Meine Facebook-Pinnwand hier auf dieser Webseite nur für mich sichtbar machen";
 $a->strings["Do not import your Facebook profile wall conversations"] = "Facebook-Pinnwand nicht importieren";
-$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."] = "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.";
+$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."] = "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.";
 $a->strings["Comma separated applications to ignore"] = "Kommaseparierte Anwendungen, die ignoriert werden sollen";
 $a->strings["Problems with Facebook Real-Time Updates"] = "Probleme mit Facebook Echtzeit-Updates";
 $a->strings["Facebook"] = "Facebook";
@@ -986,7 +1061,7 @@ $a->strings["Facebook API Key"] = "Facebook API Schlüssel";
 $a->strings["Error: it appears that you have specified the App-ID and -Secret in your .htconfig.php file. As long as they are specified there, they cannot be set using this form.<br><br>"] = "Fehler: du scheinst die App-ID und das App-Geheimnis in deiner .htconfig.php Datei angegeben zu haben. Solange sie dort festgelegt werden kannst du dieses Formular hier nicht verwenden.<br><br>";
 $a->strings["Error: the given API Key seems to be incorrect (the application access token could not be retrieved)."] = "Fehler: der angegebene API Schlüssel scheint nicht korrekt zu sein (Zugriffstoken konnte nicht empfangen werden).";
 $a->strings["The given API Key seems to work correctly."] = "Der angegebene API Schlüssel scheint korrekt zu funktionieren.";
-$a->strings["The correctness of the API Key could not be detected. Somthing strange's going on."] = "Die Echtheit des API Schlüssels konnte nicht Ã¼berprüft werden. Etwas Merkwürdiges ist hier im Gange.";
+$a->strings["The correctness of the API Key could not be detected. Something strange's going on."] = "Die Richtigkeit des API Schlüssels konnte nicht gefunden werden. Irgendwas stimmt nicht.";
 $a->strings["App-ID / API-Key"] = "App-ID / API-Key";
 $a->strings["Application secret"] = "Anwendungs-Geheimnis";
 $a->strings["Polling Interval in minutes (minimum %1\$s minutes)"] = "Abfrageintervall in Minuten (min %1\$s Minuten)";
@@ -1007,6 +1082,9 @@ $a->strings["Hi %1\$s,\n\nThe connection between your accounts on %2\$s and Face
 $a->strings["StatusNet AutoFollow settings updated."] = "StatusNet AutoFollow Einstellungen aktualisiert.";
 $a->strings["StatusNet AutoFollow Settings"] = "StatusNet AutoFollow Einstellungen";
 $a->strings["Automatically follow any StatusNet followers/mentioners"] = "Automatisch allen StatusNet Followern/Erwähnungen folgen";
+$a->strings["Bg settings updated."] = "Bg Einstellungen sind aktualisiert.";
+$a->strings["Bg Settings"] = "Bg Einstellungen";
+$a->strings["How many contacts to display on profile sidebar"] = "Wie viele Kontakte sollen in der Seitenleiste angezeigt werden";
 $a->strings["Lifetime of the cache (in hours)"] = "Lebenszeit des Caches (in Stunden)";
 $a->strings["Cache Statistics"] = "Cache Statistik";
 $a->strings["Number of items"] = "Anzahl der Einträge";
@@ -1014,7 +1092,7 @@ $a->strings["Size of the cache"] = "Größe des Caches";
 $a->strings["Delete the whole cache"] = "Cache leeren";
 $a->strings["%d person likes this"] = array(
        0 => "%d Person mag das",
-       1 => "%d Leuten mögen das",
+       1 => "%d Leute mögen das",
 );
 $a->strings["%d person doesn't like this"] = array(
        0 => " %d Person mag das nicht",
@@ -1025,6 +1103,43 @@ $a->strings["Generate new key"] = "Neuen Schlüssel erstellen";
 $a->strings["Widgets key"] = "Widgets Schlüssel";
 $a->strings["Widgets available"] = "Verfügbare Widgets";
 $a->strings["Connect on Friendica!"] = "In Friendica verbinden!";
+$a->strings["bitchslap"] = "abwatschen";
+$a->strings["bitchslapped"] = "watschte";
+$a->strings["shag"] = "poppen";
+$a->strings["shagged"] = "poppte";
+$a->strings["do something obscenely biological to"] = "mit ihm/ihr etwas obszönes Körperliches machen";
+$a->strings["did something obscenely biological to"] = "machte etwas obszönes Körperliches mit";
+$a->strings["point out the new poke feature to"] = "die neue Anstups-Funktion zeigen";
+$a->strings["pointed out the new poke feature to"] = "zeigte die neue Anstups-Funktion";
+$a->strings["declare undying love for"] = "unterbliche Liebe verkünden";
+$a->strings["declared undying love for"] = "verkündete unsterbliche Liebe für";
+$a->strings["set fire to"] = "";
+$a->strings["patent"] = "patentieren";
+$a->strings["patented"] = "patentierte";
+$a->strings["stroke beard"] = "sich den Bart kratzen";
+$a->strings["stroked their beard at"] = "kratzte sich den Bart in Richtung";
+$a->strings["bemoan the declining standards of modern secondary and tertiary education to"] = "sich Ã¼ber die sinkenden Standards der Schul- und Hochschulbildung beklagen";
+$a->strings["bemoans the declining standards of modern secondary and tertiary education to"] = "beklagte sich Ã¼ber die sinkenden Standards der Schul- und Hochschulbildung bei";
+$a->strings["hug"] = "umarmen";
+$a->strings["hugged"] = "umarmte";
+$a->strings["kiss"] = "küssen";
+$a->strings["kissed"] = "küsste";
+$a->strings["raise eyebrows at"] = "Augenbrauen hochziehen";
+$a->strings["raised their eyebrows at"] = "zog die Augenbrauen hoch in Richtung";
+$a->strings["insult"] = "beleidigen";
+$a->strings["insulted"] = "beleidigte";
+$a->strings["praise"] = "preisen";
+$a->strings["praised"] = "pries";
+$a->strings["be dubious of"] = "ungewiss sein";
+$a->strings["was dubious of"] = "war ungewiss Ã¼ber";
+$a->strings["eat"] = "essen";
+$a->strings["ate"] = "aß";
+$a->strings["giggle and fawn at"] = "kichern und einschleimen";
+$a->strings["giggled and fawned at"] = "kicherte und schleimte sich ein bei";
+$a->strings["doubt"] = "bezweifeln";
+$a->strings["doubted"] = "bezweifelte";
+$a->strings["glare"] = "zornig anstarren";
+$a->strings["glared at"] = "starrte zornig auf";
 $a->strings["YourLS Settings"] = "YourLS Einstellungen";
 $a->strings["URL: http://"] = "URL: http://";
 $a->strings["Username:"] = "Nutzername:";
@@ -1045,7 +1160,12 @@ $a->strings["Use /expression/ to provide regular expressions"] = "Verwende /expr
 $a->strings["NSFW Settings saved."] = "NSFW-Einstellungen gespeichert";
 $a->strings["%s - Click to open/close"] = "%s â€“ Zum Ã–ffnen/Schließen klicken";
 $a->strings["Forums"] = "Foren";
-$a->strings["show more"] = "mehr anzeigen";
+$a->strings["Forums:"] = "Foren:";
+$a->strings["Page settings updated."] = "Seiteneinstellungen aktualisiert.";
+$a->strings["Page Settings"] = "Seiteneinstellungen";
+$a->strings["How many forums to display on sidebar without paging"] = "Wie viele Foren sollen in der Seitenleiste ohne Umblättern angezeigt werden";
+$a->strings["Randomise Page/Forum list"] = "Zufällige Seiten/Foren Liste";
+$a->strings["Show pages/forums on profile page"] = "Foren/Seiten auf der Profilseite anzeigen";
 $a->strings["Planets Settings"] = "Planeten Einstellungen";
 $a->strings["Enable Planets Plugin"] = "Aktiviere Planeten Plugin";
 $a->strings["Login"] = "Anmeldung";
@@ -1055,57 +1175,132 @@ $a->strings["Most active users"] = "Aktivste Nutzer";
 $a->strings["Latest photos"] = "Neueste Fotos";
 $a->strings["Latest likes"] = "Neueste Favoriten";
 $a->strings["event"] = "Veranstaltung";
+$a->strings["No access"] = "Kein Zugriff";
+$a->strings["Could not open component for editing"] = "Kalender-Editierfunktion konnte nicht geöffnet werden";
+$a->strings["Go back to the calendar"] = "Zurück zum Kalender";
+$a->strings["Event data"] = "Veranstaltungsdetails";
+$a->strings["Calendar"] = "Kalender";
+$a->strings["Special color"] = "Spezielle Farbe";
+$a->strings["Subject"] = "Betreff:";
+$a->strings["Starts"] = "Beginnt";
+$a->strings["Ends"] = "Endet";
+$a->strings["Description"] = "Beschreibung";
+$a->strings["Recurrence"] = "Wiederholungen:";
+$a->strings["Frequency"] = "Frequenz";
+$a->strings["Daily"] = "Täglich";
+$a->strings["Weekly"] = "Wöchentlich";
+$a->strings["Monthly"] = "Monatlich";
+$a->strings["Yearly"] = "Jährlich";
+$a->strings["days"] = "Tage";
+$a->strings["weeks"] = "Wochen";
+$a->strings["months"] = "Monate";
+$a->strings["years"] = "Jahre";
+$a->strings["Interval"] = "Intervall";
+$a->strings["All %select% %time%"] = "Jeden %select% %time%";
+$a->strings["Days"] = "Tage";
+$a->strings["Sunday"] = "Sonntag";
+$a->strings["Monday"] = "Montag";
+$a->strings["Tuesday"] = "Dienstag";
+$a->strings["Wednesday"] = "Mittwoch";
+$a->strings["Thursday"] = "Donnerstag";
+$a->strings["Friday"] = "Freitag";
+$a->strings["Saturday"] = "Samstag";
+$a->strings["First day of week:"] = "Erster Tag der Woche";
+$a->strings["Day of month"] = "Tag des Monats";
+$a->strings["#num#th of each month"] = "#num#ten jedes Monats";
+$a->strings["#num#th-last of each month"] = "letzten #num#ten jedes Monats";
+$a->strings["#num#th #wkday# of each month"] = "jeden #num#ten #wkday# eines Monats";
+$a->strings["#num#th-last #wkday# of each month"] = "jeden #num#ten letzten #wkday# eines Monats";
+$a->strings["Month"] = "Monat";
+$a->strings["#num#th of the given month"] = "#num#ten des Monats";
+$a->strings["#num#th-last of the given month"] = "letzten #num#ten des Monats";
+$a->strings["#num#th #wkday# of the given month"] = "jeden #num#ten eines Monats";
+$a->strings["#num#th-last #wkday# of the given month"] = "jeden #num#ten letzten eines Monats";
+$a->strings["Repeat until"] = "Wiederholungen";
+$a->strings["Infinite"] = "unendlich";
+$a->strings["Until the following date"] = "bis zum folgenden Datum";
+$a->strings["Number of times"] = "Bestimmte Anzahl von Wiederholungen";
+$a->strings["Exceptions"] = "Ausnahmen";
+$a->strings["none"] = "keine";
+$a->strings["Notification"] = "Benachrichtigung";
+$a->strings["Notify by"] = "Benarchrichtigungsmethode";
+$a->strings["E-Mail"] = "E-Mail";
+$a->strings["On Friendica / Display"] = "Bei Friendica / Anzeige";
+$a->strings["Time"] = "Zeit";
+$a->strings["Hours"] = "Stunden";
+$a->strings["Minutes"] = "Minuten";
+$a->strings["Seconds"] = "Sekunden";
+$a->strings["Weeks"] = "Wochen";
+$a->strings["before the"] = "vor dem";
+$a->strings["start of the event"] = "Beginn des Termins";
+$a->strings["end of the event"] = "Ende des Termins";
+$a->strings["Add a notification"] = "Benachrichtigung hinzufügen";
+$a->strings["The event #name# will start at #date"] = "Der Termin #name# wird am #date anfangen";
+$a->strings["#name# is about to begin."] = "#name# beginnt demnächst.";
+$a->strings["Saved"] = "Gespeichert";
 $a->strings["U.S. Time Format (mm/dd/YYYY)"] = "U.S. Datumsformat (mm/dd/YYYY)";
 $a->strings["German Time Format (dd.mm.YYYY)"] = "Deutsches Datumsformat (dd.mm.YYYY)";
-$a->strings["Error"] = "Fehler";
-$a->strings["No access"] = "Kein Zugriff";
+$a->strings["Private Events"] = "Privater Termin";
+$a->strings["Private Addressbooks"] = "Private Adressbücher";
+$a->strings["Friendica-Native events"] = "Friendica Veranstaltungen";
+$a->strings["Friendica-Contacts"] = "Friendica-Kontakte";
+$a->strings["Your Friendica-Contacts"] = "Deine Friendica-Kontakte";
+$a->strings["Something went wrong when trying to import the file. Sorry. Maybe some events were imported anyway."] = "Entschuldigung. Bei dem Versuch die Datei zu importieren ist etwas schief gelaufen. Vielleicht wurden aber einige der Termine dennoch importiert.";
+$a->strings["Something went wrong when trying to import the file. Sorry."] = "Entschuldigung. Beim Importieren der Datei ist etwas schief gelaufen.";
+$a->strings["The ICS-File has been imported."] = "Die ICS-Datei wurde importoert.";
+$a->strings["No file was uploaded."] = "Es wurde keine Datei geladen.";
+$a->strings["Import a ICS-file"] = "Importiere eine ICS-Datei";
+$a->strings["ICS-File"] = "ICS-Datei";
+$a->strings["Overwrite all #num# existing events"] = "Ãœberschreibe alle #num# existierenden Einträge";
 $a->strings["New event"] = "Neue Veranstaltung";
 $a->strings["Today"] = "Heute";
 $a->strings["Day"] = "Tag";
 $a->strings["Week"] = "Woche";
-$a->strings["Month"] = "Monat";
 $a->strings["Reload"] = "Neu Laden";
 $a->strings["Date"] = "Datum";
-$a->strings["Not found"] = "Nicht gefunden";
-$a->strings["Go back to the calendar"] = "Zurück zum Kalender";
-$a->strings["Starts"] = "Beginnt";
-$a->strings["Ends"] = "Endet";
-$a->strings["Description"] = "Beschreibung";
-$a->strings["Notification"] = "Benachrichtigung";
-$a->strings["Minutes"] = "Minuten";
-$a->strings["Hours"] = "Stunden";
-$a->strings["Days"] = "Tage";
-$a->strings["before"] = "vorher";
-$a->strings["Calendar Settings"] = "Kalender Einstellungen";
+$a->strings["Error"] = "Fehler";
+$a->strings["The calendar has been updated."] = "Der Kalender wurde aktualisiert.";
+$a->strings["The new calendar has been created."] = "Der neue Kalender wurde erstellt.";
+$a->strings["The calendar has been deleted."] = "Der Kalender wurde gelöscht.";
+$a->strings["Calendar Settings"] = "Kalendereinstellungen";
 $a->strings["Date format"] = "Datumsformat";
 $a->strings["Time zone"] = "Zeitzone";
+$a->strings["Calendars"] = "Kalender";
+$a->strings["Create a new calendar"] = "Neuen Kalender anlegen";
 $a->strings["Limitations"] = "Einschränkungen";
 $a->strings["Warning"] = "Warnung";
 $a->strings["Synchronization (iPhone, Thunderbird Lightning, Android, ...)"] = "Synchronisation (iPhone, Thunderbird Lightning, Android, ...)";
 $a->strings["Synchronizing this calendar with the iPhone"] = "Diesen Kalender mit dem iPhone synchronisieren";
 $a->strings["Synchronizing your Friendica-Contacts with the iPhone"] = "Friendica-Kontakte mit dem iPhone synchronisieren";
-$a->strings["Friendica-Contacts"] = "Friendica-Kontakte";
-$a->strings["Your Friendica-Contacts"] = "Deine Friendica-Kontakte";
-$a->strings["Calendar"] = "Kalender";
+$a->strings["The current version of this plugin has not been set up correctly. Please contact the system administrator of your installation of friendica to fix this."] = "Die aktuelle Version dieses Plugins wurde nicht korrekt eingestellt. Bitte kontaktiere den System-Administrator deiner Friendica Installation um den Fehler zu beheben.";
 $a->strings["Extended calendar with CalDAV-support"] = "Erweiterter Kalender mit CalDAV Unterstützung.";
-$a->strings["The database tables have been installed."] = "Die Datenbank-Tabellen wurden installiert.";
+$a->strings["noreply"] = "noreply";
+$a->strings["Notification: "] = "Benachrichtigungen: ";
+$a->strings["The database tables have been installed."] = "Die Datenbanktabellen wurden installiert.";
 $a->strings["An error occurred during the installation."] = "Während der Installation trat ein Fehler auf.";
+$a->strings["The database tables have been updated."] = "Die Tabellen in der Datenbank wurden aktualisiert.";
+$a->strings["An error occurred during the update."] = "Während der Aktualisierung trat ein Fehler auf.";
 $a->strings["No system-wide settings yet."] = "Momentan keine systemweiten Einstellungen.";
-$a->strings["Database status"] = "Datenbank Status";
+$a->strings["Database status"] = "Datenbankstatus";
 $a->strings["Installed"] = "Installiert";
 $a->strings["Upgrade needed"] = "Upgrade erforderlich";
+$a->strings["Please back up all calendar data (the tables beginning with dav_*) before proceeding. While all calendar events <i>should</i> be converted to the new database structure, it's always safe to have a backup. Below, you can have a look at the database-queries that will be made when pressing the 'update'-button."] = "Bitte sichere alle Kalenderdaten (die Tabellen mit dav_* beginnend) bevor du mit dem Update fortfährst. Eigentliche <i>sollten</i> alle Kalendereinträge in die neue Datenbankstruktur Ã¼bernommen werden, aber sicher ist sicher. Weiter unten kannst du die Datenbank-Anfragen ansehen, die im Verlauf des Updates gemacht werden.";
 $a->strings["Upgrade"] = "Upgrade";
 $a->strings["Not installed"] = "Nicht installiert";
 $a->strings["Install"] = "Installieren";
+$a->strings["Unknown"] = "Unbekannt";
+$a->strings["Something really went wrong. I cannot recover from this state automatically, sorry. Please go to the database backend, back up the data, and delete all tables beginning with 'dav_' manually. Afterwards, this installation routine should be able to reinitialize the tables automatically."] = "Irgendetwas ging schief. Ich kann leider von diesem Zustand der Datenbank leider nicht automatisch fortfahren. Bitte mache ein Backup der Daten aus der Datenbank und lösche anschließend alle Tabellen deren Name mit 'dav_' anfangen. Anschließend sollte diese Installations-Routine in der Lage sein die nötigen Tabellen automatisch neu anzulegen.";
 $a->strings["Troubleshooting"] = "Problembehebung";
-$a->strings["Manual creation of the database tables:"] = "Manuelles anlegen der Datenbank Tabellen:";
+$a->strings["Manual creation of the database tables:"] = "Manuelles Anlegen der Datenbanktabellen:";
 $a->strings["Show SQL-statements"] = "SQL-Anweisungen anzeigen";
 $a->strings["Private Calendar"] = "Privater Kalender";
 $a->strings["Friendica Events: Mine"] = "Meine Friendica-Veranstaltungen";
 $a->strings["Friendica Events: Contacts"] = "Friendica Veranstaltungen meiner Kontakte";
-$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>"] = "Ermöglicht dir, deine friendica id (%s) mit externen unhosted-fähigen Speichern (z.B. ownCloud) zu verbinden. Siehe <a href=\"http://www.w3.org/community/unhosted/wiki/RemoteStorage#WebFinger\">RemoteStorage WebFinger</a>";
+$a->strings["Private Addresses"] = "Private Adressen";
+$a->strings["Friendica Contacts"] = "Friendica Kontakte";
+$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>"] = "Ermöglicht dir, deine Friendica ID (%s) mit externen unhosted-fähigen Speichern (z.B. ownCloud) zu verbinden. Siehe <a href=\"http://www.w3.org/community/unhosted/wiki/RemoteStorage#WebFinger\">RemoteStorage WebFinger</a>";
 $a->strings["Template URL (with {category})"] = "Vorlagen URL (mit {Kategorie})";
-$a->strings["OAuth end-point"] = "OAuth end-point";
+$a->strings["OAuth end-point"] = "OAuth Endpunkt";
 $a->strings["Api"] = "Api";
 $a->strings["Member since:"] = "Mitglied seit:";
 $a->strings["Three Dimensional Tic-Tac-Toe"] = "Dreidimensionales Tic-Tac-Toe";
@@ -1157,6 +1352,12 @@ $a->strings["Upload was cancelled, or server error encountered"] = "Upload abgeb
 $a->strings["OEmbed settings updated"] = "OEmbed Einstellungen aktualisiert.";
 $a->strings["Use OEmbed for YouTube videos"] = "OEmbed für Youtube Videos verwenden";
 $a->strings["URL to embed:"] = "URL zum Einbetten:";
+$a->strings["show/hide"] = "anzeigen/verbergen";
+$a->strings["No forum subscriptions"] = "Keine Foren-Mitgliedschaften.";
+$a->strings["Forumlist settings updated."] = "Einstellungen zur Foren-Liste aktualisiert.";
+$a->strings["Forumlist Settings"] = "Foren-Liste Einstellungen";
+$a->strings["Randomise Forumlist/Forum list"] = "Zufällige Zusammenstellung der Foren-Liste";
+$a->strings["Show forumlists/forums on profile forumlist"] = "Liste der Foren deren Abonnement du bist in deinem Profil anzeigen:";
 $a->strings["Impressum"] = "Impressum";
 $a->strings["Site Owner"] = "Betreiber der Seite";
 $a->strings["Email Address"] = "Email Adresse";
@@ -1193,28 +1394,41 @@ $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 Zoomlevel (1: Welt; 18: höchstes)";
+$a->strings["Editplain settings updated."] = "Editplain Einstellungen aktualisiert";
+$a->strings["Group Text"] = "Gruppen als Text";
+$a->strings["Use a text only (non-image) group selector in the \"group edit\" menu"] = "Beim Bearbeiten von Gruppen Text statt Bilder anzeigen";
+$a->strings["Could NOT install Libravatar successfully.<br>It requires PHP >= 5.3"] = "Kann Libravatar NICHT erfolgreich installieren.<br>PHP >=5.3 wird benötigt";
+$a->strings["generic profile image"] = "allgemeines Profilbild";
+$a->strings["random geometric pattern"] = "zufällig erzeugtes geometrisches Muster";
+$a->strings["monster face"] = "Monstergesicht";
+$a->strings["computer generated face"] = "Computergesicht";
+$a->strings["retro arcade style face"] = "Retro Arcade Design Gesicht";
+$a->strings["Your PHP version %s is lower than the required PHP >= 5.3."] = "Deine PHP Version %s ist niedriger als die benötigte Version PHP >= 5.3.";
+$a->strings["This addon is not functional on your server."] = "Dieses Addon funktioniert auf deinem Server nicht.";
+$a->strings["Information"] = "Information";
+$a->strings["Gravatar addon is installed. Please disable the Gravatar addon.<br>The Libravatar addon will fall back to Gravatar if nothing was found at Libravatar."] = "Das Gravatar Addon ist installiert. Bitte schalte das Gravatar Addon aus.<br>Das Libravatar Addon nutzt Gravater, sollte nichts auf Libravatar gefunden werden.";
+$a->strings["Default avatar image"] = "Standard Profilbild ";
+$a->strings["Select default avatar image if none was found. See README"] = "Das Standard Avatar Bild wurde nicht gefunden. Siehe README";
+$a->strings["Libravatar settings updated."] = "Libravatar Einstellungen sind aktualisiert.";
 $a->strings["Post to libertree"] = "bei libertree veröffentlichen";
 $a->strings["libertree Post Settings"] = "libertree Post Einstellungen";
 $a->strings["Enable Libertree Post Plugin"] = "Libertree Post Plugin aktivieren";
 $a->strings["Libertree API token"] = "Libertree API Token";
 $a->strings["Libertree site URL"] = "Libertree URL";
 $a->strings["Post to Libertree by default"] = "Standardmäßig bei libertree veröffentlichen";
+$a->strings["Altpager settings updated."] = "Altpager Einstellungen sind aktualisiert.";
+$a->strings["Alternate Pagination Setting"] = "Alternative Seitenumbruch Einstellung";
+$a->strings["Use links to \"newer\" and \"older\" pages in place of page numbers?"] = "Nutze Links zu \"neuer\" und \"älter\" Seiten, statt Seiten Nummern?";
 $a->strings["The MathJax addon renders mathematical formulae written using the LaTeX syntax surrounded by the usual $$ or an eqnarray block in the postings of your wall,network tab and private mail."] = "Mit dem MathJax Addon können mathematische Formeln, die mit LaTeX geschrieben wurden, dargestellt werden. Die Formel wird mit den Ã¼blichen $$ oder einem eqnarray Block gekennzeichnet. Formeln werden in allen Beiträgen auf deiner Pinnwand, dem Netzwerkstream sowie privaten Nachrichten gerendert.";
 $a->strings["Use the MathJax renderer"] = "MathJax verwenden";
 $a->strings["MathJax Base URL"] = "MathJax Basis-URL";
 $a->strings["The URL for the javascript file that should be included to use MathJax. Can be either the MathJax CDN or another installation of MathJax."] = "Die URL der MathJax Javascript-Datei, die verwendet werden soll. Diese kann entweder aus der MathJax CDN oder einer anderen Quelle stammen.";
-$a->strings["Editplain settings updated."] = "Editplain Einstellungen aktualisiert";
 $a->strings["Editplain Settings"] = "Editplain Einstellungen";
 $a->strings["Disable richtext status editor"] = "RichText Editor deaktivieren";
-$a->strings["generic profile image"] = "allgemeines Profilbild";
-$a->strings["random geometric pattern"] = "zufällig erzeugtes geometrisches Muster";
-$a->strings["monster face"] = "Monstergesicht";
-$a->strings["computer generated face"] = "Computergesicht";
-$a->strings["retro arcade style face"] = "Retro Arcade Design Gesicht";
-$a->strings["Default avatar image"] = "Standard Profilbild ";
+$a->strings["Libravatar addon is installed, too. Please disable Libravatar addon or this Gravatar addon.<br>The Libravatar addon will fall back to Gravatar if nothing was found at Libravatar."] = "Das Libravatar Addon ist ebenfalls installiert. Bitte deaktiviere das Libravatar Addon oder dieses Gravatar Addon.<br>Das Libravatar Addon nutzt Gravater, sollte nichts auf Libravatar gefunden werden.";
 $a->strings["Select default avatar image if none was found at Gravatar. See README"] = "Wähle das Standardgesicht, wenn kein Bild auf Gravatar gefunden wurde. Schaue auch sonst im README nach.";
 $a->strings["Rating of images"] = "Bildbewertung";
-$a->strings["Select the appropriate avatar rating for your site. See README"] = "Wähle eine angemessene Bildbewertung für Deinen Server. Schaue auch sonst im README nach.";
+$a->strings["Select the appropriate avatar rating for your site. See README"] = "Wähle eine angemessene Bildbewertung für deinen Server. Schaue auch sonst im README nach.";
 $a->strings["Gravatar settings updated."] = "Gravatar Einstellungen aktualisiert.";
 $a->strings["Your Friendica test account is about to expire."] = "Dein Friendica-Testkonto wird bald verfallen.";
 $a->strings["Hi %1\$s,\n\nYour test account on %2\$s will expire in less than five days. We hope you enjoyed this test drive and use this opportunity to find a permanent Friendica website for your integrated social communications. A list of public sites is available at http://dir.friendica.com/siteinfo - and for more information on setting up your own Friendica server please see the Friendica project website at http://friendica.com."] = "Hallo %1\$s,\n\ndein Testkonto auf %2\$s wird in weniger als fünf Tagen verfallen. Wir hoffen, dass dir dieser Testlauf gefallen hat, so dass du die Gelegenheit nutzt und dir einen normalen Friendica-Server für deine integrierte Social-Network-Kommunikation suchst. Eine Liste Ã¶ffentlicher Server findest du auf http://dir.friendica.com/siteinfo . Um mehr Information darüber zu bekommen, wie man einen eigenen Friendica-Server aufsetzt, kannst du auch einen Blick auf die Friendica-Projektseite werfen: http://friendica.com";
@@ -1233,7 +1447,7 @@ $a->strings["We could not contact the StatusNet API with the Path you entered."]
 $a->strings["StatusNet settings updated."] = "StatusNet Einstellungen aktualisiert.";
 $a->strings["StatusNet Posting Settings"] = "StatusNet-Beitragseinstellungen";
 $a->strings["Globally Available StatusNet OAuthKeys"] = "Verfügbare OAuth Schlüssel für StatusNet";
-$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)."] = "Für einige StatusNet Server sind voreingestellt OAuth Schlüsselpaare verfügbar. Solltest du einen dieser Server benutzen, dann verwende bitte diese Schlüssel. Falls nicht, stellen stattdessen eine Verbindung zu irgend einem anderen StatusNet Server her (siehe unten).";
+$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)."] = "Für einige StatusNet Server sind voreingestellte OAuth Schlüsselpaare verfügbar. Solltest du einen dieser Server benutzen, dann verwende bitte diese Schlüssel. Falls nicht, stelle stattdessen eine Verbindung zu irgend einem anderen StatusNet Server her (siehe unten).";
 $a->strings["Provide your own OAuth Credentials"] = "Eigene OAuth Schlüssel eintragen";
 $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."] = "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.";
 $a->strings["OAuth Consumer Key"] = "OAuth Consumer Key";
@@ -1262,12 +1476,11 @@ $a->strings["Tumblr password"] = "Tumblr Passwort";
 $a->strings["Post to Tumblr by default"] = "Standardmäßig bei Tumblr veröffentlichen";
 $a->strings["Numfriends settings updated."] = "Numfriends Einstellungen aktualisiert";
 $a->strings["Numfriends Settings"] = "Numfriends Einstellungen";
-$a->strings["How many contacts to display on profile sidebar"] = "Wie viele Kontakte sollen in der Seitenleiste angezeigt werden";
 $a->strings["Gnot settings updated."] = "Gnot Einstellungen aktualisiert.";
 $a->strings["Gnot Settings"] = "Gnot Einstellungen";
 $a->strings["Allows threading of email comment notifications on Gmail and anonymising the subject line."] = "Erlaubt das Veröffentlichen von E-Mail Kommentar Benachrichtigungen bei Gmail mit anonymisiertem Betreff";
 $a->strings["Enable this plugin/addon?"] = "Dieses Plugin/Addon aktivieren?";
-$a->strings["[Friendica:Notify] Comment to conversation #%d"] = "[Friendica Meldung] Kommentar zum Beitrag #%d";
+$a->strings["[Friendica:Notify] Comment to conversation #%d"] = "[Friendica-Meldung] Kommentar zum Beitrag #%d";
 $a->strings["Post to Wordpress"] = "Bei WordPress veröffentlichen";
 $a->strings["WordPress Post Settings"] = "WordPress-Beitragseinstellungen";
 $a->strings["Enable WordPress Post Plugin"] = "WordPress-Plugin aktivieren.";
@@ -1275,14 +1488,14 @@ $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["Provide a backlink to the Friendica post"] = "Einen zurück zum Friendica-Beitrag hinzufügen";
-$a->strings["Read the original post and comment stream on Friendica"] = "Den Original-Beitrag samt Kommentaren bei Friendica lesen";
+$a->strings["Provide a backlink to the Friendica post"] = "Einen Link zurück zum Friendica-Beitrag hinzufügen";
+$a->strings["Read the original post and comment stream on Friendica"] = "Den Originalbeitrag samt Kommentaren bei Friendica lesen";
 $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 einer bestimmten Anzahl an Buchstaben";
 $a->strings["Show More Settings saved."] = "\"Mehr zeigen\" Einstellungen gesichert.";
 $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["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 (ohne Protokoll (http/s) und mit abschließendem Schrägstrich)";
 $a->strings["Site ID"] = "Seiten ID";
@@ -1364,17 +1577,13 @@ $a->strings["Alignment"] = "Ausrichtung";
 $a->strings["Left"] = "Links";
 $a->strings["Center"] = "Mitte";
 $a->strings["Set colour scheme"] = "Farbschema wählen";
-$a->strings["Gender:"] = "Geschlecht:";
 $a->strings["j F, Y"] = "j F, Y";
 $a->strings["j F"] = "j F";
 $a->strings["Birthday:"] = "Geburtstag:";
 $a->strings["Age:"] = "Alter:";
-$a->strings["Status:"] = "Status:";
 $a->strings["for %1\$d %2\$s"] = "für %1\$d %2\$s";
-$a->strings["Homepage:"] = "Homepage:";
 $a->strings["Tags:"] = "Tags";
 $a->strings["Religion:"] = "Religion:";
-$a->strings["About:"] = "Ãœber:";
 $a->strings["Hobbies/Interests:"] = "Hobbies/Interessen:";
 $a->strings["Contact information and Social Networks:"] = "Kontaktinformationen und Soziale Netzwerke:";
 $a->strings["Musical interests:"] = "Musikalische Interessen:";
@@ -1393,9 +1602,6 @@ $a->strings["Reputable, has my trust"] = "Seriös, hat mein Vertrauen";
 $a->strings["Frequently"] = "immer wieder";
 $a->strings["Hourly"] = "Stündlich";
 $a->strings["Twice daily"] = "Zweimal täglich";
-$a->strings["Daily"] = "Täglich";
-$a->strings["Weekly"] = "Wöchentlich";
-$a->strings["Monthly"] = "Monatlich";
 $a->strings["OStatus"] = "OStatus";
 $a->strings["RSS/Atom"] = "RSS/Atom";
 $a->strings["Zot!"] = "Zott";
@@ -1463,23 +1669,50 @@ $a->strings["Ask me"] = "Frag mich";
 $a->strings["Starts:"] = "Beginnt:";
 $a->strings["Finishes:"] = "Endet:";
 $a->strings["(no subject)"] = "(kein Betreff)";
-$a->strings["noreply"] = "noreply";
+$a->strings[" on Last.fm"] = " bei Last.fm";
 $a->strings["prev"] = "vorige";
 $a->strings["first"] = "erste";
 $a->strings["last"] = "letzte";
 $a->strings["next"] = "nächste";
+$a->strings["newer"] = "neuer";
+$a->strings["older"] = "älter";
 $a->strings["No contacts"] = "Keine Kontakte";
 $a->strings["%d Contact"] = array(
        0 => "%d Kontakt",
        1 => "%d Kontakte",
 );
-$a->strings["Monday"] = "Montag";
-$a->strings["Tuesday"] = "Dienstag";
-$a->strings["Wednesday"] = "Mittwoch";
-$a->strings["Thursday"] = "Donnerstag";
-$a->strings["Friday"] = "Freitag";
-$a->strings["Saturday"] = "Samstag";
-$a->strings["Sunday"] = "Sonntag";
+$a->strings["poke"] = "anstupsen";
+$a->strings["poked"] = "stupste";
+$a->strings["ping"] = "anpingen";
+$a->strings["pinged"] = "pingte";
+$a->strings["prod"] = "knuffen";
+$a->strings["prodded"] = "knuffte";
+$a->strings["slap"] = "ohrfeigen";
+$a->strings["slapped"] = "ohrfeigte";
+$a->strings["finger"] = "befummeln";
+$a->strings["fingered"] = "befummelte";
+$a->strings["rebuff"] = "eine Abfuhr erteilen";
+$a->strings["rebuffed"] = "abfuhrerteilte";
+$a->strings["happy"] = "glücklich";
+$a->strings["sad"] = "traurig";
+$a->strings["mellow"] = "sanft";
+$a->strings["tired"] = "müde";
+$a->strings["perky"] = "frech";
+$a->strings["angry"] = "sauer";
+$a->strings["stupified"] = "verblüfft";
+$a->strings["puzzled"] = "verwirrt";
+$a->strings["interested"] = "interessiert";
+$a->strings["bitter"] = "verbittert";
+$a->strings["cheerful"] = "fröhlich";
+$a->strings["alive"] = "lebendig";
+$a->strings["annoyed"] = "verärgert";
+$a->strings["anxious"] = "unruhig";
+$a->strings["cranky"] = "schrullig";
+$a->strings["disturbed"] = "verstört";
+$a->strings["frustrated"] = "frustriert";
+$a->strings["motivated"] = "motiviert";
+$a->strings["relaxed"] = "entspannt";
+$a->strings["surprised"] = "überrascht";
 $a->strings["January"] = "Januar";
 $a->strings["February"] = "Februar";
 $a->strings["March"] = "März";
@@ -1498,7 +1731,7 @@ $a->strings["[remove]"] = "[löschen]";
 $a->strings["Categories:"] = "Kategorien:";
 $a->strings["Filed under:"] = "Abgelegt unter:";
 $a->strings["Click to open/close"] = "Zum Ã¶ffnen/schließen klicken";
-$a->strings["default"] = "standard";
+$a->strings["default"] = "Standard";
 $a->strings["Select an alternate language"] = "Alternative Sprache auswählen";
 $a->strings["activity"] = "Aktivität";
 $a->strings["comment"] = "Kommentar";
@@ -1534,7 +1767,7 @@ $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 Systembenachrichtigungen als gelesen";
-$a->strings["Private mail"] = "Private Email";
+$a->strings["Private mail"] = "Private E-Mail";
 $a->strings["Inbox"] = "Eingang";
 $a->strings["Outbox"] = "Ausgang";
 $a->strings["Manage"] = "Verwalten";
@@ -1570,11 +1803,7 @@ $a->strings["month"] = "Monat";
 $a->strings["day"] = "Tag";
 $a->strings["never"] = "nie";
 $a->strings["less than a second ago"] = "vor weniger als einer Sekunde";
-$a->strings["years"] = "Jahre";
-$a->strings["months"] = "Monate";
 $a->strings["week"] = "Woche";
-$a->strings["weeks"] = "Wochen";
-$a->strings["days"] = "Tage";
 $a->strings["hour"] = "Stunde";
 $a->strings["hours"] = "Stunden";
 $a->strings["minute"] = "Minute";
@@ -1582,44 +1811,50 @@ $a->strings["minutes"] = "Minuten";
 $a->strings["second"] = "Sekunde";
 $a->strings["seconds"] = "Sekunden";
 $a->strings["%1\$d %2\$s ago"] = "%1\$d %2\$s her";
+$a->strings["%s's birthday"] = "%ss Geburtstag";
+$a->strings["Happy Birthday %s"] = "Herzlichen Glückwunsch %s";
 $a->strings["From: "] = "Von: ";
-$a->strings["$1 wrote:"] = "$1 hat 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["$1 wrote:"] = "$1 hat geschrieben:";
+$a->strings["Encrypted content"] = "Verschlüsselter Inhalt";
+$a->strings["Cannot locate DNS info for database server '%s'"] = "Kann die DNS Informationen für den Datenbankserver '%s' nicht ermitteln.";
 $a->strings["[no subject]"] = "[kein Betreff]";
 $a->strings["Visible to everybody"] = "Für jeden sichtbar";
 $a->strings["Friendica Notification"] = "Friendica-Benachrichtigung";
 $a->strings["Thank You,"] = "Danke,";
 $a->strings["%s Administrator"] = "der Administrator von %s";
 $a->strings["%s <!item_type!>"] = "%s <!item_type!>";
-$a->strings["[Friendica:Notify] New mail received at %s"] = "[Friendica Meldung] Neue Nachricht erhalten von %s";
-$a->strings["%1\$s sent you a new private message at %2\$s."] = "%1\$s hat Dir eine neues private Nachricht geschickt auf %2\$s.";
-$a->strings["%1\$s sent you %2\$s."] = "%1\$s schickte Dir %2\$s.";
+$a->strings["[Friendica:Notify] New mail received at %s"] = "[Friendica-Meldung] Neue Nachricht erhalten von %s";
+$a->strings["%1\$s sent you a new private message at %2\$s."] = "%1\$s hat dir eine neue private Nachricht auf %2\$s geschickt.";
+$a->strings["%1\$s sent you %2\$s."] = "%1\$s schickte dir %2\$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["%1\$s commented on [url=%2\$s]a %3\$s[/url]"] = "%1\$s kommentierte [url=%2\$s]a %3\$s[/url]";
-$a->strings["%1\$s commented on [url=%2\$s]%3\$s's %4\$s[/url]"] = "%1\$s kommentierte [url=%2\$s]%3\$s's %4\$s[/url]";
-$a->strings["%1\$s commented on [url=%2\$s]your %3\$s[/url]"] = "%1\$s kommentierte [url=%2\$s]Deinen Beitrag %3\$s[/url]";
-$a->strings["[Friendica:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Friendica Meldung] Kommentar zum Beitrag #%1\$d von %2\$s";
+$a->strings["%1\$s commented on [url=%2\$s]%3\$s's %4\$s[/url]"] = "%1\$s kommentierte [url=%2\$s]%3\$ss %4\$s[/url]";
+$a->strings["%1\$s commented on [url=%2\$s]your %3\$s[/url]"] = "%1\$s kommentierte [url=%2\$s]deinen %3\$s[/url]";
+$a->strings["[Friendica:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Friendica-Meldung] Kommentar zum Beitrag #%1\$d von %2\$s";
 $a->strings["%s commented on an item/conversation you have been following."] = "%s hat einen Beitrag kommentiert, dem du folgst.";
 $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["[Friendica:Notify] %s posted to your profile wall"] = "[Friendica Meldung] %s hat auf Deine Pinnwand geschrieben";
-$a->strings["%1\$s posted to your profile wall at %2\$s"] = "%1\$s schrieb auf Deine Pinnwand auf %2\$s";
-$a->strings["%1\$s posted to [url=%2s]your wall[/url]"] = "%1\$s schrieb auf [url=%2s]Deine Pinnwand[/url]";
-$a->strings["[Friendica:Notify] %s tagged you"] = "[Friendica Meldung] %s hat Dich erwähnt";
-$a->strings["%1\$s tagged you at %2\$s"] = "%1\$s erwähnte Dich auf %2\$s";
-$a->strings["%1\$s [url=%2s]tagged you[/url]."] = "%1\$s [url=%2s]erwähnte Dich[/url].";
-$a->strings["[Friendica:Notify] %s tagged your post"] = "[Friendica Meldung] %s markierte Deinen Beitrag";
-$a->strings["%1\$s tagged your post at %2\$s"] = "%1\$s erwähnte Deinen Beitrag auf %2\$s";
+$a->strings["[Friendica:Notify] %s posted to your profile wall"] = "[Friendica-Meldung] %s hat auf deine Pinnwand geschrieben";
+$a->strings["%1\$s posted to your profile wall at %2\$s"] = "%1\$s schrieb auf %2\$s auf deine Pinnwand";
+$a->strings["%1\$s posted to [url=%2\$s]your wall[/url]"] = "%1\$s hat etwas auf [url=%2\$s]deiner Pinnwand[/url] gepostet";
+$a->strings["[Friendica:Notify] %s tagged you"] = "[Friendica-Meldung] %s hat dich erwähnt";
+$a->strings["%1\$s tagged you at %2\$s"] = "%1\$s erwähnte dich auf %2\$s";
+$a->strings["%1\$s [url=%2\$s]tagged you[/url]."] = "%1\$s [url=%2\$s]erwähnte dich[/url].";
+$a->strings["[Friendica:Notify] %1\$s poked you"] = "[Friendica-Meldung] %1\$s hat dich angestupst";
+$a->strings["%1\$s poked you at %2\$s"] = "%1\$s hat dich auf %2\$s angestupst";
+$a->strings["%1\$s [url=%2\$s]poked you[/url]."] = "%1\$s [url=%2\$s]hat dich angestupst[/url].";
+$a->strings["[Friendica:Notify] %s tagged your post"] = "[Friendica-Meldung] %s hat deinen Beitrag getaggt";
+$a->strings["%1\$s tagged your post at %2\$s"] = "%1\$s erwähnte deinen Beitrag auf %2\$s";
 $a->strings["%1\$s tagged [url=%2\$s]your post[/url]"] = "%1\$s erwähnte [url=%2\$s]Deinen Beitrag[/url]";
-$a->strings["[Friendica:Notify] Introduction received"] = "[Friendica Meldung] Kontaktanfrage erhalten";
-$a->strings["You've received an introduction from '%1\$s' at %2\$s"] = "Du hast eine Kontaktanfrage erhalten von '%1\$s' auf %2\$s";
-$a->strings["You've received [url=%1\$s]an introduction[/url] from %2\$s."] = "Du hast eine [url=%1\$s]Kontaktanfrage[/url] erhalten von %2\$s.";
+$a->strings["[Friendica:Notify] Introduction received"] = "[Friendica-Meldung] Kontaktanfrage erhalten";
+$a->strings["You've received an introduction from '%1\$s' at %2\$s"] = "Du hast eine Kontaktanfrage von '%1\$s' auf %2\$s erhalten";
+$a->strings["You've received [url=%1\$s]an introduction[/url] from %2\$s."] = "Du hast eine [url=%1\$s]Kontaktanfrage[/url] von %2\$s erhalten.";
 $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["[Friendica:Notify] Friend suggestion received"] = "[Friendica Meldung] Kontaktvorschlag erhalten";
-$a->strings["You've received a friend suggestion from '%1\$s' at %2\$s"] = "Du hast einen Freunde-Vorschlag erhalten von '%1\$s' auf %2\$s";
-$a->strings["You've received [url=%1\$s]a friend suggestion[/url] for %2\$s from %3\$s."] = "Du hast einen [url=%1\$s]Freunde-Vorschlag[/url] erhalten %2\$s von %3\$s.";
+$a->strings["[Friendica:Notify] Friend suggestion received"] = "[Friendica-Meldung] Kontaktvorschlag erhalten";
+$a->strings["You've received a friend suggestion from '%1\$s' at %2\$s"] = "Du hast einen Freunde-Vorschlag von '%1\$s' auf %2\$s erhalten";
+$a->strings["You've received [url=%1\$s]a friend suggestion[/url] for %2\$s from %3\$s."] = "Du hast einen [url=%1\$s]Freunde-Vorschlag[/url] %2\$s von %3\$s erhalten.";
 $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.";
@@ -1630,7 +1865,7 @@ $a->strings["The profile address specified does not provide adequate information
 $a->strings["An author or name was not found."] = "Es wurde kein Autor oder Name gefunden.";
 $a->strings["No browser URL could be matched to this address."] = "Zu dieser Adresse konnte keine passende Browser URL gefunden werden.";
 $a->strings["Unable to match @-style Identity Address with a known protocol or email contact."] = "Konnte die @-Adresse mit keinem der bekannten Protokolle oder Email-Kontakte abgleichen.";
-$a->strings["Use mailto: in front of address to force email check."] = "Verwende mailto: vor der Email Adresse um eine Ãœberprüfung der Email Adresse zu erzwingen.";
+$a->strings["Use mailto: in front of address to force email check."] = "Verwende mailto: vor der Email Adresse, um eine Ãœberprüfung der E-Mail-Adresse zu erzwingen.";
 $a->strings["The profile address specified belongs to a network which has been disabled on this site."] = "Die Adresse dieses Profils gehört zu einem Netzwerk, mit dem die Kommunikation auf dieser Seite ausgeschaltet wurde.";
 $a->strings["Limited profile. This person will be unable to receive direct/personal notifications from you."] = "Eingeschränktes Profil. Diese Person wird keine direkten/privaten Nachrichten von dir erhalten können.";
 $a->strings["Unable to retrieve contact information."] = "Konnte die Kontaktinformationen nicht empfangen.";
@@ -1638,8 +1873,6 @@ $a->strings["following"] = "folgen";
 $a->strings["A new person is sharing with you at "] = "Eine neue Person teilt mit dir auf ";
 $a->strings["You have a new follower at "] = "Du hast einen neuen Kontakt auf ";
 $a->strings["Archives"] = "Archiv";
-$a->strings["image/photo"] = "Bild/Foto";
-$a->strings["link"] = "Verweis";
 $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";
@@ -1654,50 +1887,23 @@ $a->strings["Your \"nickname\" can only contain \"a-z\", \"0-9\", \"-\", and \"_
 $a->strings["Nickname is already registered. Please choose another."] = "Dieser Spitzname ist bereits vergeben. Bitte wähle einen anderen.";
 $a->strings["Nickname was once registered here and may not be re-used. Please choose another."] = "Dieser Spitzname ist bereits vergeben. Bitte wähle einen anderen.";
 $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 during registration. Please try again."] = "Während 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 Standardprofils ist ein Fehler aufgetreten. Bitte versuche es noch einmal.";
 $a->strings["Welcome "] = "Willkommen ";
 $a->strings["Please upload a profile photo."] = "Bitte lade ein Profilbild hoch.";
 $a->strings["Welcome back "] = "Willkommen zurück ";
 $a->strings["The form security token was not correct. This probably happened because the form has been opened for too long (>3 hours) before submitting it."] = "Das Sicherheitsmerkmal war nicht korrekt. Das passiert meistens wenn das Formular vor dem Absenden zu lange geöffnet war (länger als 3 Stunden).";
 $a->strings["stopped following"] = "wird nicht mehr gefolgt";
+$a->strings["Poke"] = "Anstupsen";
 $a->strings["View Status"] = "Pinnwand anschauen";
 $a->strings["View Profile"] = "Profil anschauen";
 $a->strings["View Photos"] = "Bilder anschauen";
 $a->strings["Network Posts"] = "Netzwerkbeiträge";
 $a->strings["Edit Contact"] = "Kontakt bearbeiten";
 $a->strings["Send PM"] = "Private Nachricht senden";
+$a->strings["%1\$s poked %2\$s"] = "%1\$s hat %2\$s angestupst";
 $a->strings["post/item"] = "Nachricht/Beitrag";
 $a->strings["%1\$s marked %2\$s's %3\$s as favorite"] = "%1\$s hat %2\$s\\s %3\$s als Favorit markiert";
-$a->strings["Select"] = "Auswählen";
-$a->strings["View %s's profile @ %s"] = "Das Profil von %s auf %s betrachten.";
-$a->strings["%s from %s"] = "%s von %s";
-$a->strings["View in context"] = "Im Zusammenhang betrachten";
-$a->strings["%d comment"] = array(
-       0 => "%d Kommentar",
-       1 => "%d Kommentare",
-);
-$a->strings["like"] = "mag ich";
-$a->strings["dislike"] = "mag ich nicht";
-$a->strings["Share this"] = "Weitersagen";
-$a->strings["share"] = "Teilen";
-$a->strings["Bold"] = "Fett";
-$a->strings["Italic"] = "Kursiv";
-$a->strings["Underline"] = "Unterstrichen";
-$a->strings["Quote"] = "Zitat";
-$a->strings["Code"] = "Code";
-$a->strings["Image"] = "Bild";
-$a->strings["Link"] = "Verweis";
-$a->strings["Video"] = "Video";
-$a->strings["add star"] = "markieren";
-$a->strings["remove star"] = "Markierung entfernen";
-$a->strings["toggle star status"] = "Markierung umschalten";
-$a->strings["starred"] = "markiert";
-$a->strings["add tag"] = "Tag hinzufügen";
-$a->strings["save to folder"] = "In Ordner speichern";
-$a->strings["to"] = "zu";
-$a->strings["Wall-to-Wall"] = "Wall-to-Wall";
-$a->strings["via Wall-To-Wall:"] = "via Wall-To-Wall:";
 $a->strings["Delete Selected Items"] = "Lösche die markierten Beiträge";
 $a->strings["%s likes this."] = "%s mag das.";
 $a->strings["%s doesn't like this."] = "%s mag das nicht.";
@@ -1722,12 +1928,15 @@ $a->strings["audio link"] = "Audio-Link";
 $a->strings["set location"] = "Ort setzen";
 $a->strings["clear location"] = "Ort löschen";
 $a->strings["permissions"] = "Zugriffsrechte";
+$a->strings["Click here to upgrade."] = "Zum Upgraden hier klicken.";
+$a->strings["This action exceeds the limits set by your subscription plan."] = "Diese Aktion Ã¼berschreitet die Obergrenze deines Abonnements.";
+$a->strings["This action is not available under your subscription plan."] = "Diese Aktion ist in deinem Abonnement nicht verfügbar.";
 $a->strings["Delete this item?"] = "Diesen Beitrag löschen?";
 $a->strings["show fewer"] = "weniger anzeigen";
 $a->strings["Update %s failed. See error logs."] = "Update %s fehlgeschlagen. Bitte Fehlerprotokoll Ã¼berprüfen.";
 $a->strings["Update Error at %s"] = "Updatefehler bei %s";
 $a->strings["Create a New Account"] = "Neues Konto erstellen";
-$a->strings["Nickname or Email address: "] = "Spitzname oder Email-Adresse: ";
+$a->strings["Nickname or Email address: "] = "Spitzname oder E-Mail-Adresse: ";
 $a->strings["Password: "] = "Passwort: ";
 $a->strings["Or login using OpenID: "] = "Oder melde dich mit deiner OpenID an: ";
 $a->strings["Forgot your password?"] = "Passwort vergessen?";
@@ -1744,4 +1953,4 @@ $a->strings["Events this week:"] = "Veranstaltungen diese Woche";
 $a->strings["Status Messages and Posts"] = "Statusnachrichten und Beiträge";
 $a->strings["Profile Details"] = "Profildetails";
 $a->strings["Events and Calendar"] = "Ereignisse und Kalender";
-$a->strings["Only You Can See This"] = "Nur Du Kannst Das Sehen";
+$a->strings["Only You Can See This"] = "Nur du kannst das sehen";
index f641a5faf4ec93b519d509b5695eba8717e4de05..9746898c777408a003a18865ee7a8745635463f8 100644 (file)
@@ -3,7 +3,7 @@
 <div id="event-wrapper" style="display: none;" ><div id="event-title">$event_title</div>
 <div id="event-title-end"></div>
 {{ for $events as $event }}
-<div class="event-list" id="event-$event.id"></a> <a href="events/$event.link">$event.title</a> $event.date </div>
+<div class="event-list" id="event-$event.id"> <a href="events/$event.link">$event.title</a> $event.date </div>
 {{ endfor }}
 </div>
 {{ endif }}
index 8a75a4b8e0bf1ecb0900b8b1895f37c02f2a337d..42bd92f4ce497d42d271c9cba19cf4f709be211b 100644 (file)
@@ -39,7 +39,9 @@
                        $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
                        $("#mod-cmnt-wrap-" + id).show();
                        openMenu("comment-edit-submit-wrapper-" + id);
+                       return true;
                }
+               return false;
        }
        function commentClose(obj,id) {
                if(obj.value == '') {
@@ -48,7 +50,9 @@
                        $("#comment-edit-text-" + id).addClass("comment-edit-text-empty");
                        $("#mod-cmnt-wrap-" + id).hide();
                        closeMenu("comment-edit-submit-wrapper-" + id);
+                       return true;
                }
+               return false;
        }
 
 
                }
        }
 
+       function showHideCommentBox(id) {
+               if( $('#comment-edit-form-' + id).is(':visible')) {
+                       $('#comment-edit-form-' + id).hide();
+               }
+               else {
+                       $('#comment-edit-form-' + id).show();
+               }
+       }
+
 
 </script>
 
diff --git a/view/login_head.tpl b/view/login_head.tpl
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/view/mood_content.tpl b/view/mood_content.tpl
new file mode 100644 (file)
index 0000000..9349c56
--- /dev/null
@@ -0,0 +1,20 @@
+<h3>$title</h3>
+
+<div id="mood-desc">$desc</div>
+
+<form action="mood" method="get">
+<br />
+<br />
+
+<input id="mood-parent" type="hidden" value="$parent" name="parent" />
+
+<select name="verb" id="mood-verb-select" >
+{{ for $verbs as $v }}
+<option value="$v.0">$v.1</option>
+{{ endfor }}
+</select>
+<br />
+<br />
+<input type="submit" name="submit" value="$submit" />
+</form>
+
index 47f34685f339164573b5534db7af2f92089a6a4e..8d8a0dbd4d57dfaad47cad8bcc289e3ea7de0324 100644 (file)
@@ -1,6 +1,6 @@
 <a name="$item.id" ></a>
-<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
@@ -23,7 +23,7 @@
                </div>
                <div class="wall-item-author">
                                <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a>
-                               <div class="wall-item-ago"  id="wall-item-ago-$item.id">$item.ago</div>
+                               <div class="wall-item-ago"  id="wall-item-ago-$item.id" title="$item.localtime">$item.ago</div>
                                
                </div>                  
                <div class="wall-item-content" id="wall-item-content-$item.id" >
@@ -48,7 +48,7 @@
        {{ endif }}
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 
 </div>
 
index dba289031c943e0fa186056f51507a7a57377f69..828e1065b4d3cd9b81d5572c585a42a57d1ca56a 100644 (file)
@@ -1,5 +1,5 @@
-<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
@@ -47,7 +47,7 @@
        {{ endif }}
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 
 </div>
 
index dfcd8ca96003c639eb6f13d4cca343c2ff04fd75..0ef70cf8b97f427ef0d09203eef54cec3d98d93d 100644 (file)
@@ -1,11 +1,11 @@
-<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
                                 onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
                                <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
-                                       <img src="$item.thumb" class="wall-item-photo$item.sparkle$item.indent" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" />
+                                       <img src="$item.thumb" class="wall-item-photo$item.sparkle $item.indent" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" />
                                </a>
                                <span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
                                <div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
@@ -74,5 +74,5 @@
        $item.comment
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 </div>
index abd5967b2a7d13134309367fe26c6ffffe9a242f..4c5b120873b842cdfecc2b6577e1b9f0d5a7541a 100644 (file)
@@ -1,5 +1,5 @@
-<div class="wall-item-outside-wrapper$item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info wallwall" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
                                <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
@@ -10,7 +10,7 @@
                                onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')"
                 onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
                                <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
-                               <img src="$item.thumb" class="wall-item-photo$item.sparkle$item.indent" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" /></a>
+                               <img src="$item.thumb" class="wall-item-photo$item.sparkle $item.indent" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" /></a>
                                <span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
                 <div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
                     <ul>
@@ -80,6 +80,6 @@
        $item.comment
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 </div>
 
index dba289031c943e0fa186056f51507a7a57377f69..828e1065b4d3cd9b81d5572c585a42a57d1ca56a 100644 (file)
@@ -1,5 +1,5 @@
-<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
@@ -47,7 +47,7 @@
        {{ endif }}
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 
 </div>
 
index dfcd8ca96003c639eb6f13d4cca343c2ff04fd75..0ef70cf8b97f427ef0d09203eef54cec3d98d93d 100644 (file)
@@ -1,11 +1,11 @@
-<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
                                 onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
                                <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
-                                       <img src="$item.thumb" class="wall-item-photo$item.sparkle$item.indent" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" />
+                                       <img src="$item.thumb" class="wall-item-photo$item.sparkle $item.indent" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" />
                                </a>
                                <span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
                                <div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
@@ -74,5 +74,5 @@
        $item.comment
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 </div>
index abd5967b2a7d13134309367fe26c6ffffe9a242f..4c5b120873b842cdfecc2b6577e1b9f0d5a7541a 100644 (file)
@@ -1,5 +1,5 @@
-<div class="wall-item-outside-wrapper$item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info wallwall" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
                                <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
@@ -10,7 +10,7 @@
                                onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')"
                 onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
                                <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
-                               <img src="$item.thumb" class="wall-item-photo$item.sparkle$item.indent" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" /></a>
+                               <img src="$item.thumb" class="wall-item-photo$item.sparkle $item.indent" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" /></a>
                                <span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
                 <div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
                     <ul>
@@ -80,6 +80,6 @@
        $item.comment
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 </div>
 
index 5d1bb6310c6c0650da9238c6bd78648a8c32a63d..8d106bdc9f085f4a68570fe52634ebd50e05ace8 100644 (file)
@@ -49,7 +49,7 @@ background: #444;
        color: #99CCFF;
 }
 
-.wall-item-photo-menu li a {
+.wall-item-photo-menu li a, .contact-photo-menu {
        color: #CCCCCC; background-color: #333333;
 }
 
index 55644e462d90e52ed64aba201f62e08c02217054..dda180bbd226fffccdeee31f31d57dd28bffe0c0 100644 (file)
@@ -28,7 +28,8 @@ background: #444;
 
 }
 .wall-item-tools {     background-color: #444444;   background-image: none;}
-.comment-wwedit-wrapper{ background-color: #333333; }
+.comment-wwedit-wrapper{ background-color: #444444; }
+.toplevel_item > .wall-item-comment-wrapper > .comment-wwedit-wrapper{ background-color: #333333; }
 .comment-edit-preview{ color: #000000; }
 .wall-item-content-wrapper.comment { background-color: #444444; border: 0px;}
 .photo-top-album-name{ background-color: #333333; }
@@ -49,7 +50,7 @@ background: #444;
        color: #99CCFF;
 }
 
-.wall-item-photo-menu li a {
+.wall-item-photo-menu li a, .contact-photo-menu {
        color: #CCCCCC; background-color: #333333;
 }
 
index 346934b70cd9bc0b9deab0f148ae59b3e75471e7..33f68dd6a6e417fbe443533d9ffbf459267d1a2f 100644 (file)
@@ -39,6 +39,7 @@
        {{ inc field_checkbox.tpl with $field=$ostatus_disabled }}{{ endinc }}
        {{ inc field_checkbox.tpl with $field=$diaspora_enabled }}{{ endinc }}
        {{ inc field_checkbox.tpl with $field=$dfrn_only }}{{ endinc }}
+       {{ inc field_checkbox.tpl with $field=$thread_allow }}{{ endinc }}
        {{ inc field_input.tpl with $field=$global_directory }}{{ endinc }}
        
        <div class="submit"><input type="submit" name="page_site" value="$submit" /></div>
diff --git a/view/theme/diabook/wall_thread.tpl b/view/theme/diabook/wall_thread.tpl
new file mode 100644 (file)
index 0000000..c53f8b0
--- /dev/null
@@ -0,0 +1,125 @@
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+       <span id="hide-comments-total-$item.id" class="hide-comments-total">$item.num_comments</span> <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span>
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+<div id="tread-wrapper-$item.id" class="tread-wrapper $item.toplevel">
+{{ if $item.indent }}{{ else }}
+<div class="wall-item-decor">
+       <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+</div>
+{{ endif }}
+<div class="wall-item-container $item.indent">
+       <div class="wall-item-item">
+               <div class="wall-item-info">
+                       <div class="contact-photo-wrapper"
+                               onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
+                               onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="contact-photo-link" id="wall-item-photo-link-$item.id">
+                                       <img src="$item.thumb" class="contact-photo$item.sparkle" id="wall-item-photo-$item.id" alt="$item.name" />
+                               </a>
+                               <a href="#" rel="#wall-item-photo-menu-$item.id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$item.id">menu</a>
+                               <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$item.id">
+                               $item.item_photo_menu
+                               </ul>
+                               
+                       </div>
+               </div>
+                       <div class="wall-item-actions-author">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle">$item.name</span></a> 
+                       <span class="wall-item-ago">-
+                       {{ if $item.plink }}<a class="link$item.sparkle" title="$item.plink.title" href="$item.plink.href" style="color: #999">$item.ago</a>{{ else }} $item.ago {{ endif }}
+                       {{ if $item.lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$item.id);">$item.lock</span> {{ endif }}
+                       </span>
+                       </div>
+               <div class="wall-item-content">
+                       {{ if $item.title }}<h2><a href="$item.plink.href">$item.title</a></h2>{{ endif }}
+                       $item.body
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="wall-item-links">
+               </div>
+               <div class="wall-item-tags">
+                       {{ for $item.tags as $tag }}
+                               <span class='tag'>$tag</span>
+                       {{ endfor }}
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="">
+
+               </div>
+               <div class="wall-item-actions">
+
+                       <div class="wall-item-actions-social">
+                       
+                       
+                       {{ if $item.vote }}
+                               <a href="#" id="like-$item.id" class="icon like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false">$item.vote.like.1</a>
+                               <a href="#" id="dislike-$item.id" class="icon dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
+                       {{ endif }}
+                                               
+                       {{ if $item.vote.share }}
+                               <a href="#" id="share-$item.id" class="icon recycle" title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>
+                       {{ endif }}     
+
+
+                       {{ if $item.star }}
+                               <a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item icon $item.isstarred" title="$item.star.toggle">
+                               <img src="images/star_dummy.png" class="icon star" alt="$item.star.do" /> </a>
+                               <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item icon tagged" title="$item.star.tagger"></a>                                   
+                       {{ endif }}     
+                       
+                       {{ if $item.filer }}
+                       <a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item icon file-as" title="$item.star.filer"></a>
+                       {{ endif }}                             
+                       
+                       {{ if $item.plink }}<a class="icon link" title="$item.plink.title" href="$item.plink.href">$item.plink.title</a>{{ endif }}
+                       
+                                       
+                                       
+                       </div>
+                       
+                       <div class="wall-item-actions-tools">
+
+                               {{ if $item.drop.dropping }}
+                                       <input type="checkbox" title="$item.drop.select" name="itemselected[]" class="item-select" value="$item.id" />
+                                       <a href="item/drop/$item.id" onclick="return confirmDelete();" class="icon drop" title="$item.drop.delete">$item.drop.delete</a>
+                               {{ endif }}
+                               {{ if $item.edpost }}
+                                       <a class="icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
+                               {{ endif }}
+                       </div>
+                       <div class="wall-item-location">$item.location&nbsp;</div>
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="wall-item-links"></div>
+               <div class="wall-item-like" id="wall-item-like-$item.id">$item.like</div>
+               <div class="wall-item-dislike" id="wall-item-dislike-$item.id">$item.dislike</div>      
+       </div>
+</div>
+
+{{ if $item.threaded }}
+{{ if $item.comment }}
+<div class="wall-item-comment-wrapper $item.indent" >
+       $item.comment
+</div>
+{{ endif }}
+{{ endif }}
+
+{{ if $item.flatten }}
+<div class="wall-item-comment-wrapper" >
+       $item.comment
+</div>
+{{ endif }}
+
+
+{{ for $item.children as $item }}
+       {{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+</div>
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
diff --git a/view/theme/diabook/wallwall_thread.tpl b/view/theme/diabook/wallwall_thread.tpl
new file mode 100644 (file)
index 0000000..c53f8b0
--- /dev/null
@@ -0,0 +1,125 @@
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+       <span id="hide-comments-total-$item.id" class="hide-comments-total">$item.num_comments</span> <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span>
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+<div id="tread-wrapper-$item.id" class="tread-wrapper $item.toplevel">
+{{ if $item.indent }}{{ else }}
+<div class="wall-item-decor">
+       <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+</div>
+{{ endif }}
+<div class="wall-item-container $item.indent">
+       <div class="wall-item-item">
+               <div class="wall-item-info">
+                       <div class="contact-photo-wrapper"
+                               onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
+                               onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="contact-photo-link" id="wall-item-photo-link-$item.id">
+                                       <img src="$item.thumb" class="contact-photo$item.sparkle" id="wall-item-photo-$item.id" alt="$item.name" />
+                               </a>
+                               <a href="#" rel="#wall-item-photo-menu-$item.id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$item.id">menu</a>
+                               <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$item.id">
+                               $item.item_photo_menu
+                               </ul>
+                               
+                       </div>
+               </div>
+                       <div class="wall-item-actions-author">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle">$item.name</span></a> 
+                       <span class="wall-item-ago">-
+                       {{ if $item.plink }}<a class="link$item.sparkle" title="$item.plink.title" href="$item.plink.href" style="color: #999">$item.ago</a>{{ else }} $item.ago {{ endif }}
+                       {{ if $item.lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$item.id);">$item.lock</span> {{ endif }}
+                       </span>
+                       </div>
+               <div class="wall-item-content">
+                       {{ if $item.title }}<h2><a href="$item.plink.href">$item.title</a></h2>{{ endif }}
+                       $item.body
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="wall-item-links">
+               </div>
+               <div class="wall-item-tags">
+                       {{ for $item.tags as $tag }}
+                               <span class='tag'>$tag</span>
+                       {{ endfor }}
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="">
+
+               </div>
+               <div class="wall-item-actions">
+
+                       <div class="wall-item-actions-social">
+                       
+                       
+                       {{ if $item.vote }}
+                               <a href="#" id="like-$item.id" class="icon like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false">$item.vote.like.1</a>
+                               <a href="#" id="dislike-$item.id" class="icon dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
+                       {{ endif }}
+                                               
+                       {{ if $item.vote.share }}
+                               <a href="#" id="share-$item.id" class="icon recycle" title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>
+                       {{ endif }}     
+
+
+                       {{ if $item.star }}
+                               <a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item icon $item.isstarred" title="$item.star.toggle">
+                               <img src="images/star_dummy.png" class="icon star" alt="$item.star.do" /> </a>
+                               <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item icon tagged" title="$item.star.tagger"></a>                                   
+                       {{ endif }}     
+                       
+                       {{ if $item.filer }}
+                       <a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item icon file-as" title="$item.star.filer"></a>
+                       {{ endif }}                             
+                       
+                       {{ if $item.plink }}<a class="icon link" title="$item.plink.title" href="$item.plink.href">$item.plink.title</a>{{ endif }}
+                       
+                                       
+                                       
+                       </div>
+                       
+                       <div class="wall-item-actions-tools">
+
+                               {{ if $item.drop.dropping }}
+                                       <input type="checkbox" title="$item.drop.select" name="itemselected[]" class="item-select" value="$item.id" />
+                                       <a href="item/drop/$item.id" onclick="return confirmDelete();" class="icon drop" title="$item.drop.delete">$item.drop.delete</a>
+                               {{ endif }}
+                               {{ if $item.edpost }}
+                                       <a class="icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
+                               {{ endif }}
+                       </div>
+                       <div class="wall-item-location">$item.location&nbsp;</div>
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="wall-item-links"></div>
+               <div class="wall-item-like" id="wall-item-like-$item.id">$item.like</div>
+               <div class="wall-item-dislike" id="wall-item-dislike-$item.id">$item.dislike</div>      
+       </div>
+</div>
+
+{{ if $item.threaded }}
+{{ if $item.comment }}
+<div class="wall-item-comment-wrapper $item.indent" >
+       $item.comment
+</div>
+{{ endif }}
+{{ endif }}
+
+{{ if $item.flatten }}
+<div class="wall-item-comment-wrapper" >
+       $item.comment
+</div>
+{{ endif }}
+
+
+{{ for $item.children as $item }}
+       {{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+</div>
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
index 67c8f3f0b4fb8bb919b0aef064f3d1b9102ad6f5..aaf97473b41b8c6f8a0a02d620bc42cb509dbd42 100644 (file)
Binary files a/view/theme/dispy/dark/icons.png and b/view/theme/dispy/dark/icons.png differ
index 7cbbd3574e9ec08adc7694b8123fdff8619b80ff..90b83bf81111fe670e1c7bbc4c49781d9cdff293 100644 (file)
        is_visible="true"
        teeth="10"
        phi="10" />
+    <inkscape:path-effect
+       effect="gears"
+       id="path-effect4050-9"
+       is_visible="true"
+       teeth="10"
+       phi="10" />
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter4064-8">
+      <feBlend
+         inkscape:collect="always"
+         mode="lighten"
+         in2="BackgroundImage"
+         id="feBlend4066-4" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter4064-7">
+      <feBlend
+         inkscape:collect="always"
+         mode="lighten"
+         in2="BackgroundImage"
+         id="feBlend4066-9" />
+    </filter>
+    <inkscape:path-effect
+       effect="gears"
+       id="path-effect4050-9-1"
+       is_visible="true"
+       teeth="10"
+       phi="10" />
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter4064-8-9">
+      <feBlend
+         inkscape:collect="always"
+         mode="lighten"
+         in2="BackgroundImage"
+         id="feBlend4066-4-4" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter4064-7-3">
+      <feBlend
+         inkscape:collect="always"
+         mode="lighten"
+         in2="BackgroundImage"
+         id="feBlend4066-9-2" />
+    </filter>
   </defs>
   <sodipodi:namedview
      id="base"
      borderopacity="1.0"
      inkscape:pageopacity="0"
      inkscape:pageshadow="2"
-     inkscape:zoom="1.9403009"
-     inkscape:cx="127.81563"
-     inkscape:cy="128.63003"
+     inkscape:zoom="2.7164213"
+     inkscape:cx="79.895323"
+     inkscape:cy="76.322411"
      inkscape:document-units="px"
      inkscape:current-layer="layer1"
      showgrid="true"
      showguides="true"
      inkscape:guide-bbox="true"
      inkscape:snap-global="false"
-     inkscape:window-width="1065"
-     inkscape:window-height="742"
-     inkscape:window-x="40"
-     inkscape:window-y="50"
+     inkscape:window-width="1148"
+     inkscape:window-height="452"
+     inkscape:window-x="0"
+     inkscape:window-y="24"
      inkscape:window-maximized="0"
      width="0px"
      height="0px"
      fit-margin-top="0"
      fit-margin-left="0"
      fit-margin-right="0"
-     fit-margin-bottom="0">
+     fit-margin-bottom="0"
+     inkscape:showpageshadow="false"
+     showborder="true">
     <inkscape:grid
        type="xygrid"
        id="grid4016"
         <dc:format>image/svg+xml</dc:format>
         <dc:type
            rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title />
+        <dc:title></dc:title>
       </cc:Work>
     </rdf:RDF>
   </metadata>
      id="layer1"
      transform="translate(0,-852.36218)">
     <rect
-       transform="matrix(1,0,0,0.84848485,44,217.14578)"
+       transform="matrix(2.5239206,0,0,0.84848485,21.386213,217.14578)"
        inkscape:export-ydpi="90"
        inkscape:export-xdpi="90"
        inkscape:export-filename="/home/fabio/public_html/f9k-tre/icons.png"
          d="m -0.00914477,2.3011918 2.83893857,-2.12898488 11.8211932,0 0,14.04031008 L 13.73679,14.984131 13.640962,1.0093271 3.4856425,0.91349949 1.1272469,2.7572384 12,2.7572384 12,16 -0.00914477,16 z M 8.2958276,12.045759 c -1.8631354,-1.086398 0.045759,-2.6807932 0.045759,-3.6707932 0,-0.99 -0.6423808,-2.2112618 -2.2457592,-2.1833105 C 4.4924492,6.2196066 3.8500685,7.0875 3.8500685,8.4166667 c 0,1.3291666 2.1768916,1.6857063 -0.1958961,3.6876733 z"
          style="fill:#1a1a1a" />
     </g>
+    <g
+       id="g4021">
+      <rect
+         ry="6"
+         rx="6"
+         y="18.790752"
+         x="470.35715"
+         height="44.285713"
+         width="44.285713"
+         id="rect196-0"
+         style="fill:#1a1a1a;stroke:#d3d7cf;stroke-width:2.0535686;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;filter:url(#filter4064-7)"
+         transform="matrix(0.43114968,0,0,0.43114968,-113.62924,933.71148)" />
+      <path
+         transform="matrix(0.26322611,0,0,0.26322611,-27.639493,937.40175)"
+         inkscape:original-d="M 484.55417,49.762303 492.5,40.933609 504.27158,48.879434"
+         inkscape:path-effect="#path-effect4050-9"
+         inkscape:connector-curvature="0"
+         id="path4072-5"
+         d="m 484.90604,52.679071 c 0,0 -0.72327,1.028211 -2.88202,1.697409 -0.63474,-0.494653 -1.23439,-1.034334 -1.79294,-1.613646 0.43889,-2.217071 1.3855,-3.044283 1.3855,-3.044283 l 2.04237,-1.648571 c -0.73879,-0.915258 -1.3342,-1.946011 -1.75793,-3.043257 l -2.44847,0.945549 c 0,0 -1.18951,0.40671 -3.32932,-0.320779 -0.22277,-0.773276 -0.39067,-1.56235 -0.50204,-2.359331 1.65823,-1.535673 2.91028,-1.648499 2.91028,-1.648499 l 2.62132,-0.133248 c -0.0597,-1.174706 0.0645,-2.358577 0.36658,-3.495332 l -2.53663,-0.674208 c 0,0 -1.20139,-0.37014 -2.50493,-2.216441 0.2743,-0.756533 0.60227,-1.4936 0.98062,-2.20383 2.24419,-0.267701 3.32343,0.376954 3.32343,0.376954 l 2.19901,1.432971 c 0.64217,-0.985455 1.43848,-1.870246 2.35108,-2.612309 l -1.65589,-2.03644 c 0,0 -0.75438,-1.005609 -0.72373,-3.265497 0.66659,-0.45082 1.36515,-0.854347 2.08871,-1.206542 1.97294,1.102524 2.46715,2.258424 2.46715,2.258424 l 0.93675,2.451844 c 1.09876,-0.419794 2.26306,-0.667544 3.43754,-0.731472 l -0.14265,-2.620822 c 0,0 -0.0192,-1.25697 1.3339,-3.067245 0.80426,0.02709 1.6066,0.111239 2.39899,0.251604 0.94809,2.051624 0.66849,3.277254 0.66849,3.277254 l -0.6833,2.534196 c 1.13566,0.306213 2.22322,0.790136 3.21097,1.428761 l 1.42508,-2.204138 c 0,0 0.72327,-1.028211 2.88202,-1.697409 0.63474,0.494653 1.23439,1.034334 1.79294,1.613646 -0.43889,2.217071 -1.3855,3.044283 -1.3855,3.044283 l -2.04237,1.648571 c 0.73879,0.915258 1.3342,1.946011 1.75793,3.043257 l 2.44847,-0.945549 c 0,0 1.18951,-0.40671 3.32932,0.320779 0.22277,0.773276 0.39067,1.56235 0.50204,2.359331 -1.65823,1.535673 -2.91028,1.648499 -2.91028,1.648499 l -2.62132,0.133248 c 0.0597,1.174706 -0.0645,2.358577 -0.36658,3.495332 l 2.53663,0.674208 c 0,0 1.20139,0.37014 2.50493,2.216441 -0.2743,0.756533 -0.60227,1.4936 -0.98062,2.20383 -2.24419,0.267701 -3.32343,-0.376954 -3.32343,-0.376954 l -2.19901,-1.432971 c -0.64217,0.985455 -1.43848,1.870246 -2.35108,2.612309 l 1.65589,2.03644 c 0,0 0.75438,1.005609 0.72373,3.265497 -0.66659,0.45082 -1.36515,0.854347 -2.08871,1.206542 -1.97294,-1.102524 -2.46715,-2.258424 -2.46715,-2.258424 l -0.93675,-2.451844 c -1.09876,0.419794 -2.26306,0.667544 -3.43754,0.731472 l 0.14265,2.620822 c 0,0 0.0192,1.25697 -1.3339,3.067245 -0.80426,-0.02709 -1.6066,-0.111239 -2.39899,-0.251604 -0.94809,-2.051624 -0.66849,-3.277254 -0.66849,-3.277254 l 0.6833,-2.534196 c -1.13566,-0.306213 -2.22322,-0.790136 -3.21097,-1.428761 l -1.42508,2.204138"
+         style="fill:none;stroke:#d3d7cf;stroke-width:1.66475451;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;filter:url(#filter4064-8)" />
+      <path
+         style="fill:none;stroke:#f2f2f2;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+         d="m 4.1190936,170.87651 1.316683,1.26576 1.7540206,0.003 5.5819788,-5.57043 3.523532,0.006 2.853557,-2.81689 0.0014,-1.68321 -1.169094,-1.16909 -2.365502,2.3822 -2.63185,-0.005 0.09078,-2.55314 2.365531,-2.36552 -1.277858,-1.27786 -1.648714,0.0359 -2.8505569,2.8535 0.00598,3.45613 -5.5530909,5.58201 z"
+         id="path4208-6"
+         inkscape:connector-curvature="0"
+         transform="matrix(0.55525134,-9.5997878e-4,-9.5997878e-4,0.55525134,88.473928,863.40819)"
+         sodipodi:nodetypes="cccccccccccccccccc" />
+    </g>
+    <g
+       id="g4016">
+      <rect
+         ry="6"
+         rx="6"
+         y="18.790752"
+         x="470.35715"
+         height="44.285713"
+         width="44.285713"
+         id="rect196-0-0"
+         style="fill:#2e2f2e;stroke:#d3d7cf;stroke-width:2.05356860000000019;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;filter:url(#filter4064-7-3);fill-opacity:1"
+         transform="matrix(0.43114968,0,0,0.43114968,-91.3641,933.9484)" />
+      <path
+         transform="matrix(0.26322611,0,0,0.26322611,-5.37436,937.63865)"
+         inkscape:original-d="M 484.55417,49.762303 492.5,40.933609 504.27158,48.879434"
+         inkscape:path-effect="#path-effect4050-9-1"
+         inkscape:connector-curvature="0"
+         id="path4072-5-1"
+         d="m 484.90604,52.679071 c 0,0 -0.72327,1.028211 -2.88202,1.697409 -0.63474,-0.494653 -1.23439,-1.034334 -1.79294,-1.613646 0.43889,-2.217071 1.3855,-3.044283 1.3855,-3.044283 l 2.04237,-1.648571 c -0.73879,-0.915258 -1.3342,-1.946011 -1.75793,-3.043257 l -2.44847,0.945549 c 0,0 -1.18951,0.40671 -3.32932,-0.320779 -0.22277,-0.773276 -0.39067,-1.56235 -0.50204,-2.359331 1.65823,-1.535673 2.91028,-1.648499 2.91028,-1.648499 l 2.62132,-0.133248 c -0.0597,-1.174706 0.0645,-2.358577 0.36658,-3.495332 l -2.53663,-0.674208 c 0,0 -1.20139,-0.37014 -2.50493,-2.216441 0.2743,-0.756533 0.60227,-1.4936 0.98062,-2.20383 2.24419,-0.267701 3.32343,0.376954 3.32343,0.376954 l 2.19901,1.432971 c 0.64217,-0.985455 1.43848,-1.870246 2.35108,-2.612309 l -1.65589,-2.03644 c 0,0 -0.75438,-1.005609 -0.72373,-3.265497 0.66659,-0.45082 1.36515,-0.854347 2.08871,-1.206542 1.97294,1.102524 2.46715,2.258424 2.46715,2.258424 l 0.93675,2.451844 c 1.09876,-0.419794 2.26306,-0.667544 3.43754,-0.731472 l -0.14265,-2.620822 c 0,0 -0.0192,-1.25697 1.3339,-3.067245 0.80426,0.02709 1.6066,0.111239 2.39899,0.251604 0.94809,2.051624 0.66849,3.277254 0.66849,3.277254 l -0.6833,2.534196 c 1.13566,0.306213 2.22322,0.790136 3.21097,1.428761 l 1.42508,-2.204138 c 0,0 0.72327,-1.028211 2.88202,-1.697409 0.63474,0.494653 1.23439,1.034334 1.79294,1.613646 -0.43889,2.217071 -1.3855,3.044283 -1.3855,3.044283 l -2.04237,1.648571 c 0.73879,0.915258 1.3342,1.946011 1.75793,3.043257 l 2.44847,-0.945549 c 0,0 1.18951,-0.40671 3.32932,0.320779 0.22277,0.773276 0.39067,1.56235 0.50204,2.359331 -1.65823,1.535673 -2.91028,1.648499 -2.91028,1.648499 l -2.62132,0.133248 c 0.0597,1.174706 -0.0645,2.358577 -0.36658,3.495332 l 2.53663,0.674208 c 0,0 1.20139,0.37014 2.50493,2.216441 -0.2743,0.756533 -0.60227,1.4936 -0.98062,2.20383 -2.24419,0.267701 -3.32343,-0.376954 -3.32343,-0.376954 l -2.19901,-1.432971 c -0.64217,0.985455 -1.43848,1.870246 -2.35108,2.612309 l 1.65589,2.03644 c 0,0 0.75438,1.005609 0.72373,3.265497 -0.66659,0.45082 -1.36515,0.854347 -2.08871,1.206542 -1.97294,-1.102524 -2.46715,-2.258424 -2.46715,-2.258424 l -0.93675,-2.451844 c -1.09876,0.419794 -2.26306,0.667544 -3.43754,0.731472 l 0.14265,2.620822 c 0,0 0.0192,1.25697 -1.3339,3.067245 -0.80426,-0.02709 -1.6066,-0.111239 -2.39899,-0.251604 -0.94809,-2.051624 -0.66849,-3.277254 -0.66849,-3.277254 l 0.6833,-2.534196 c -1.13566,-0.306213 -2.22322,-0.790136 -3.21097,-1.428761 l -1.42508,2.204138"
+         style="fill:none;stroke:#d3d7cf;stroke-width:1.66475451;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;filter:url(#filter4064-8-9)" />
+      <path
+         style="fill:none;stroke:#f2f2f2;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+         d="m 4.1190936,170.87651 1.316683,1.26576 1.7540206,0.003 5.5819788,-5.57043 3.523532,0.006 2.853557,-2.81689 0.0014,-1.68321 -1.169094,-1.16909 -2.365502,2.3822 -2.63185,-0.005 0.09078,-2.55314 2.365531,-2.36552 -1.277858,-1.27786 -1.648714,0.0359 -2.8505569,2.8535 0.00598,3.45613 -5.5530909,5.58201 z"
+         id="path4208-6-0"
+         inkscape:connector-curvature="0"
+         transform="matrix(0.55525134,-9.5997878e-4,-9.5997878e-4,0.55525134,110.73906,863.64511)"
+         sodipodi:nodetypes="cccccccccccccccccc" />
+    </g>
   </g>
 </svg>
index 95e2bb998399aa88205908bd8b991fe4f102e830..ff30337a357faa4023ceb01c00366d4ab6e26f95 100644 (file)
@@ -90,7 +90,7 @@ nav .nav-link{display:inline-block;width:22px;height:22px;overflow:hidden;margin
 #nav-home-link{background-position:-44px -132px;}#nav-home-link:hover{background-position:-66px -132px;}
 #nav-intro-link{background-position:0px -88px;}#nav-intro-link:hover{background-position:-22px -88px;}
 #nav-login-link,#nav-logout-link{background-position:0 -88px;}#nav-login-link:hover,#nav-logout-link:hover{background-position:-22px -88px;}
-#nav-manage-link{background-position:0px -22px;}#nav-manage-link:hover{background-position:-22px -22px;}
+#nav-manage-link{background-position:-88px -88px;}#nav-manage-link:hover{background-position:-110px -88px;}
 #nav-messages-link{background-position:-44px -88px;}#nav-messages-link:hover{background-position:-66px -88px;}
 #nav-notify-link,#nav-notifications-linkmenu{background-position:-44px -110px;}
 #nav-notify-link:hover{background-position:-66px -110px;}
index f701c12253b6f4812299cb0015a9b7433621cc61..d7becbedb8dc691beacb9922c3715276fc532a15 100644 (file)
@@ -542,9 +542,9 @@ nav .nav-link {
     }
 }
 #nav-manage-link {
-    background-position: 0px -22px;
+    background-position: -88px -88px;
     &:hover {
-        background-position: -22px -22px;
+        background-position: -110px -88px;
     }
 }
 #nav-messages-link {
index a34df96bee1b931a11686f25dcd662644fd8d35f..3d1701b29eb42fa9a0e2b3c55cbb0cd5fa375d69 100644 (file)
@@ -2,27 +2,30 @@
 <meta charset="UTF-8" />
 <base href="$baseurl/" />
 <meta name="generator" content="$generator" />
-<link rel="shortcut icon" href="$baseurl/images/friendica-32.png" />
-<link rel="search" href="$baseurl/opensearch"
-       type="application/opensearchdescription+xml" title="Search in Friendica" />
 <link rel="stylesheet" href="$baseurl/library/fancybox/jquery.fancybox-1.3.4.css" type="text/css" media="screen" />
 <link rel="stylesheet" href="$baseurl/library/tiptip/tipTip.css" type="text/css" media="screen" />
 <link rel="stylesheet" href="$baseurl/library/jgrowl/jquery.jgrowl.css" type="text/css" media="screen" />
 <link rel="stylesheet" type="text/css" href="$stylesheet" media="all" />
+<link rel="shortcut icon" href="$baseurl/images/friendica-32.png" />
+<link rel="search"
+         href="$baseurl/opensearch" 
+         type="application/opensearchdescription+xml" 
+         title="Search in Friendica" />
+
 <!--[if IE]>
 <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/acl.js"></script>
-<script type="text/javascript" src="$baseurl/js/main.js"></script>
 <script type="text/javascript" src="$baseurl/js/jquery.textinputs.js"></script>
 <script type="text/javascript" src="$baseurl/js/fk.autocomplete.js"></script>
 <script type="text/javascript" src="$baseurl/library/fancybox/jquery.fancybox-1.3.4.pack.js"></script>
 <script type="text/javascript" src="$baseurl/library/tiptip/jquery.tipTip.minified.js"></script>
 <script type="text/javascript" src="$baseurl/library/jgrowl/jquery.jgrowl_minimized.js"></script>
 <script type="text/javascript" src="$baseurl/library/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script>
+<script type="text/javascript" src="$baseurl/js/acl.js"></script>
 <script type="text/javascript" src="$baseurl/js/webtoolkit.base64.js"></script>
-<!-- in dispy-dark -->
+<script type="text/javascript" src="$baseurl/js/main.js"></script>
+<!-- in dispy -->
 <script>
        var updateInterval = $update_interval;
        var localUser = {{ if $local_user }}$local_user{{ else }}false{{ endif }};
@@ -47,6 +50,7 @@
                }
        }
 
+
        function commentInsert(obj,id) {
                var tmpStr = $("#comment-edit-text-" + id).val();
                if(tmpStr == '$comment') {
                        $('#hide-comments-' + id).html('$showfewer');
                }
        }
+
+       function showHideCommentBox(id) {
+               if( $('#comment-edit-form-' + id).is(':visible')) {
+                       $('#comment-edit-form-' + id).hide();
+               }
+               else {
+                       $('#comment-edit-form-' + id).show();
+               }
+       }
+
+
 </script>
index 253259d8d54f755a2ba244be61fe5b9b58e5efcd..6a0130a7267486fd9f0504665eee500780587659 100644 (file)
Binary files a/view/theme/dispy/icons/sparkle.cur and b/view/theme/dispy/icons/sparkle.cur differ
index dabe8bb3d0821d0f67ee0705a1a71ae52fac35e7..0be480df26e14e548c62d1a6ffda6182a9ae4654 100644 (file)
@@ -1,5 +1,5 @@
 <script type="text/javascript">
-var editor = false;
+var editor=false;
 var textlen = 0;
 var plaintext = '$editselect';
 
index 563d58ce4975f5ccb06a87bd49e1d77a6730d4f3..12969dd031861e227d7ed3117209d6cace9dd474 100644 (file)
@@ -1,8 +1,6 @@
 <form id="profile-jot-form" action="$action" method="post">
        <div id="jot">
                <div id="profile-jot-desc" class="jothidden">&#160;</div>
-               <input name="title" id="jot-title" type="text" placeholder="$placeholdertitle" value="$title" class="jothidden" style="display:none" />
-               <div id="character-counter" class="grey jothidden"></div>
 
                <input type="hidden" name="type" value="$ptyp" />
                <input type="hidden" name="profile_uid" value="$profile_uid" />
                <input type="hidden" name="coord" id="jot-coord" value="" />
                <input type="hidden" name="post_id" value="$post_id" />
                <input type="hidden" name="preview" id="jot-preview" value="0" />
+               <div id="jot-title-wrap"><input name="title" id="jot-title" type="text" placeholder="$placeholdertitle" value="$title" class="jothidden" style="display:none" /></div>
+               <div id="character-counter" class="grey jothidden"></div>
                <div id="jot-category-wrap"><input name="category" id="jot-category" type="text" placeholder="$placeholdercategory" value="$category" class="jothidden" style="display:none" /></div>
                <textarea rows="5" cols="64" class="profile-jot-text" id="profile-jot-text" name="body">{{ if $content }}$content{{ else }}$share{{ endif }}
                </textarea>
 
-
+<div id="profile-jot-submit-wrapper" class="jothidden">
 <div id="jot-tools" class="jothidden" style="display:none">
        <div id="profile-jot-submit-wrapper" class="jothidden">
 
@@ -68,6 +68,9 @@
                        $jotnets
                </div>
        </div>
+</div>
 
+<div id="profile-jot-end"></div>
 </form>
+</div>
                {{ if $content }}<script>initEditor();</script>{{ endif }}
index 5c2eab36e4aa18d896cdd2cc7d8b4d5268f55806..1494c1b8b496400f3a7b766b2b88c9e6c8060c1a 100644 (file)
Binary files a/view/theme/dispy/light/icons.png and b/view/theme/dispy/light/icons.png differ
index 7b82b94eaae65950c804a1acf6b45fa8b8699a42..1531edc191193d1ee2f824afe31c6f5306c0742d 100644 (file)
@@ -14,9 +14,9 @@
    height="200"
    id="svg3403"
    version="1.1"
-   inkscape:version="0.48+devel r"
+   inkscape:version="0.48.3.1 r9886"
    sodipodi:docname="icons.svg"
-   inkscape:export-filename="/var/www3/kisikew.org/portal/pub/fd/view/theme/dispy/icons.png"
+   inkscape:export-filename="/var/www3/kisikew.org/portal/pub/fd/view/theme/dispy/light/icons.png"
    inkscape:export-xdpi="90"
    inkscape:export-ydpi="90">
   <defs
        is_visible="true"
        teeth="10"
        phi="10" />
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter4064-7-3">
+      <feBlend
+         inkscape:collect="always"
+         mode="lighten"
+         in2="BackgroundImage"
+         id="feBlend4066-9-2" />
+    </filter>
+    <inkscape:path-effect
+       effect="gears"
+       id="path-effect4050-9-1"
+       is_visible="true"
+       teeth="10"
+       phi="10" />
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter4064-8-9">
+      <feBlend
+         inkscape:collect="always"
+         mode="lighten"
+         in2="BackgroundImage"
+         id="feBlend4066-4-4" />
+    </filter>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter4064-7-3-9">
+      <feBlend
+         inkscape:collect="always"
+         mode="lighten"
+         in2="BackgroundImage"
+         id="feBlend4066-9-2-0" />
+    </filter>
+    <inkscape:path-effect
+       effect="gears"
+       id="path-effect4050-9-1-5"
+       is_visible="true"
+       teeth="10"
+       phi="10" />
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter4064-8-9-6">
+      <feBlend
+         inkscape:collect="always"
+         mode="lighten"
+         in2="BackgroundImage"
+         id="feBlend4066-4-4-7" />
+    </filter>
   </defs>
   <sodipodi:namedview
      id="base"
      inkscape:pageopacity="0.0"
      inkscape:pageshadow="2"
      inkscape:zoom="1.9403009"
-     inkscape:cx="64.725266"
-     inkscape:cy="108.36719"
+     inkscape:cx="76.608548"
+     inkscape:cy="117.37905"
      inkscape:document-units="px"
      inkscape:current-layer="layer1"
      showgrid="true"
      showguides="true"
      inkscape:guide-bbox="true"
      inkscape:snap-global="false"
-     inkscape:window-width="1065"
-     inkscape:window-height="742"
-     inkscape:window-x="40"
-     inkscape:window-y="50"
+     inkscape:window-width="1148"
+     inkscape:window-height="792"
+     inkscape:window-x="0"
+     inkscape:window-y="24"
      inkscape:window-maximized="0">
     <inkscape:grid
        type="xygrid"
         <dc:format>image/svg+xml</dc:format>
         <dc:type
            rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title />
+        <dc:title></dc:title>
       </cc:Work>
     </rdf:RDF>
   </metadata>
          id="path4166" />
     </g>
     <rect
-       transform="matrix(1,0,0,0.84848485,44,217.14578)"
+       transform="matrix(1.9980186,0,0,0.84848485,44,217.14578)"
        inkscape:export-ydpi="90"
        inkscape:export-xdpi="90"
        inkscape:export-filename="/home/fabio/public_html/f9k-tre/icons.png"
          d="m -0.00914477,2.3011918 2.83893857,-2.12898488 11.8211932,0 0,14.04031008 L 13.73679,14.984131 13.640962,1.0093271 3.4856425,0.91349949 1.1272469,2.7572384 12,2.7572384 12,16 -0.00914477,16 z M 8.2958276,12.045759 c -1.8631354,-1.086398 0.045759,-2.6807932 0.045759,-3.6707932 0,-0.99 -0.6423808,-2.2112618 -2.2457592,-2.1833105 C 4.4924492,6.2196066 3.8500685,7.0875 3.8500685,8.4166667 c 0,1.3291666 2.1768916,1.6857063 -0.1958961,3.6876733 z"
          style="fill:#1a1a1a" />
     </g>
+    <g
+       transform="translate(-21.97338,-0.48160397)"
+       id="g4016">
+      <rect
+         ry="6"
+         rx="6"
+         y="18.790752"
+         x="470.35715"
+         height="44.285713"
+         width="44.285713"
+         id="rect196-0-0"
+         style="fill:#2e2f2e;fill-opacity:1;stroke:#d3d7cf;stroke-width:2.0535686;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;filter:url(#filter4064-7-3)"
+         transform="matrix(0.43114968,0,0,0.43114968,-91.3641,933.9484)" />
+      <path
+         transform="matrix(0.26322611,0,0,0.26322611,-5.37436,937.63865)"
+         inkscape:original-d="M 484.55417,49.762303 492.5,40.933609 504.27158,48.879434"
+         inkscape:path-effect="#path-effect4050-9-1"
+         inkscape:connector-curvature="0"
+         id="path4072-5-1"
+         d="m 484.90604,52.679071 c 0,0 -0.72327,1.028211 -2.88202,1.697409 -0.63474,-0.494653 -1.23439,-1.034334 -1.79294,-1.613646 0.43889,-2.217071 1.3855,-3.044283 1.3855,-3.044283 l 2.04237,-1.648571 c -0.73879,-0.915258 -1.3342,-1.946011 -1.75793,-3.043257 l -2.44847,0.945549 c 0,0 -1.18951,0.40671 -3.32932,-0.320779 -0.22277,-0.773276 -0.39067,-1.56235 -0.50204,-2.359331 1.65823,-1.535673 2.91028,-1.648499 2.91028,-1.648499 l 2.62132,-0.133248 c -0.0597,-1.174706 0.0645,-2.358577 0.36658,-3.495332 l -2.53663,-0.674208 c 0,0 -1.20139,-0.37014 -2.50493,-2.216441 0.2743,-0.756533 0.60227,-1.4936 0.98062,-2.20383 2.24419,-0.267701 3.32343,0.376954 3.32343,0.376954 l 2.19901,1.432971 c 0.64217,-0.985455 1.43848,-1.870246 2.35108,-2.612309 l -1.65589,-2.03644 c 0,0 -0.75438,-1.005609 -0.72373,-3.265497 0.66659,-0.45082 1.36515,-0.854347 2.08871,-1.206542 1.97294,1.102524 2.46715,2.258424 2.46715,2.258424 l 0.93675,2.451844 c 1.09876,-0.419794 2.26306,-0.667544 3.43754,-0.731472 l -0.14265,-2.620822 c 0,0 -0.0192,-1.25697 1.3339,-3.067245 0.80426,0.02709 1.6066,0.111239 2.39899,0.251604 0.94809,2.051624 0.66849,3.277254 0.66849,3.277254 l -0.6833,2.534196 c 1.13566,0.306213 2.22322,0.790136 3.21097,1.428761 l 1.42508,-2.204138 c 0,0 0.72327,-1.028211 2.88202,-1.697409 0.63474,0.494653 1.23439,1.034334 1.79294,1.613646 -0.43889,2.217071 -1.3855,3.044283 -1.3855,3.044283 l -2.04237,1.648571 c 0.73879,0.915258 1.3342,1.946011 1.75793,3.043257 l 2.44847,-0.945549 c 0,0 1.18951,-0.40671 3.32932,0.320779 0.22277,0.773276 0.39067,1.56235 0.50204,2.359331 -1.65823,1.535673 -2.91028,1.648499 -2.91028,1.648499 l -2.62132,0.133248 c 0.0597,1.174706 -0.0645,2.358577 -0.36658,3.495332 l 2.53663,0.674208 c 0,0 1.20139,0.37014 2.50493,2.216441 -0.2743,0.756533 -0.60227,1.4936 -0.98062,2.20383 -2.24419,0.267701 -3.32343,-0.376954 -3.32343,-0.376954 l -2.19901,-1.432971 c -0.64217,0.985455 -1.43848,1.870246 -2.35108,2.612309 l 1.65589,2.03644 c 0,0 0.75438,1.005609 0.72373,3.265497 -0.66659,0.45082 -1.36515,0.854347 -2.08871,1.206542 -1.97294,-1.102524 -2.46715,-2.258424 -2.46715,-2.258424 l -0.93675,-2.451844 c -1.09876,0.419794 -2.26306,0.667544 -3.43754,0.731472 l 0.14265,2.620822 c 0,0 0.0192,1.25697 -1.3339,3.067245 -0.80426,-0.02709 -1.6066,-0.111239 -2.39899,-0.251604 -0.94809,-2.051624 -0.66849,-3.277254 -0.66849,-3.277254 l 0.6833,-2.534196 c -1.13566,-0.306213 -2.22322,-0.790136 -3.21097,-1.428761 l -1.42508,2.204138"
+         style="fill:none;stroke:#d3d7cf;stroke-width:1.66475451;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;filter:url(#filter4064-8-9)" />
+      <path
+         style="fill:none;stroke:#f2f2f2;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+         d="m 4.1190936,170.87651 1.316683,1.26576 1.7540206,0.003 5.5819788,-5.57043 3.523532,0.006 2.853557,-2.81689 0.0014,-1.68321 -1.169094,-1.16909 -2.365502,2.3822 -2.63185,-0.005 0.09078,-2.55314 2.365531,-2.36552 -1.277858,-1.27786 -1.648714,0.0359 -2.8505569,2.8535 0.00598,3.45613 -5.5530909,5.58201 z"
+         id="path4208-6-0"
+         inkscape:connector-curvature="0"
+         transform="matrix(0.55525134,-9.5997878e-4,-9.5997878e-4,0.55525134,110.73906,863.64511)"
+         sodipodi:nodetypes="cccccccccccccccccc" />
+    </g>
+    <rect
+       transform="matrix(0.43114968,0,0,0.43114968,-91.46425,933.55802)"
+       style="fill:#1a1a1a;fill-opacity:1;stroke:#d3d7cf;stroke-width:2.05356860000000019;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;filter:url(#filter4064-7-3-9)"
+       id="rect196-0-0-7"
+       width="44.285713"
+       height="44.285713"
+       x="470.35715"
+       y="18.790752"
+       rx="6"
+       ry="6" />
+    <path
+       style="fill:none;stroke:#d3d7cf;stroke-width:1.66475451;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;filter:url(#filter4064-8-9-6)"
+       d="m 484.90604,52.679071 c 0,0 -0.72327,1.028211 -2.88202,1.697409 -0.63474,-0.494653 -1.23439,-1.034334 -1.79294,-1.613646 0.43889,-2.217071 1.3855,-3.044283 1.3855,-3.044283 l 2.04237,-1.648571 c -0.73879,-0.915258 -1.3342,-1.946011 -1.75793,-3.043257 l -2.44847,0.945549 c 0,0 -1.18951,0.40671 -3.32932,-0.320779 -0.22277,-0.773276 -0.39067,-1.56235 -0.50204,-2.359331 1.65823,-1.535673 2.91028,-1.648499 2.91028,-1.648499 l 2.62132,-0.133248 c -0.0597,-1.174706 0.0645,-2.358577 0.36658,-3.495332 l -2.53663,-0.674208 c 0,0 -1.20139,-0.37014 -2.50493,-2.216441 0.2743,-0.756533 0.60227,-1.4936 0.98062,-2.20383 2.24419,-0.267701 3.32343,0.376954 3.32343,0.376954 l 2.19901,1.432971 c 0.64217,-0.985455 1.43848,-1.870246 2.35108,-2.612309 l -1.65589,-2.03644 c 0,0 -0.75438,-1.005609 -0.72373,-3.265497 0.66659,-0.45082 1.36515,-0.854347 2.08871,-1.206542 1.97294,1.102524 2.46715,2.258424 2.46715,2.258424 l 0.93675,2.451844 c 1.09876,-0.419794 2.26306,-0.667544 3.43754,-0.731472 l -0.14265,-2.620822 c 0,0 -0.0192,-1.25697 1.3339,-3.067245 0.80426,0.02709 1.6066,0.111239 2.39899,0.251604 0.94809,2.051624 0.66849,3.277254 0.66849,3.277254 l -0.6833,2.534196 c 1.13566,0.306213 2.22322,0.790136 3.21097,1.428761 l 1.42508,-2.204138 c 0,0 0.72327,-1.028211 2.88202,-1.697409 0.63474,0.494653 1.23439,1.034334 1.79294,1.613646 -0.43889,2.217071 -1.3855,3.044283 -1.3855,3.044283 l -2.04237,1.648571 c 0.73879,0.915258 1.3342,1.946011 1.75793,3.043257 l 2.44847,-0.945549 c 0,0 1.18951,-0.40671 3.32932,0.320779 0.22277,0.773276 0.39067,1.56235 0.50204,2.359331 -1.65823,1.535673 -2.91028,1.648499 -2.91028,1.648499 l -2.62132,0.133248 c 0.0597,1.174706 -0.0645,2.358577 -0.36658,3.495332 l 2.53663,0.674208 c 0,0 1.20139,0.37014 2.50493,2.216441 -0.2743,0.756533 -0.60227,1.4936 -0.98062,2.20383 -2.24419,0.267701 -3.32343,-0.376954 -3.32343,-0.376954 l -2.19901,-1.432971 c -0.64217,0.985455 -1.43848,1.870246 -2.35108,2.612309 l 1.65589,2.03644 c 0,0 0.75438,1.005609 0.72373,3.265497 -0.66659,0.45082 -1.36515,0.854347 -2.08871,1.206542 -1.97294,-1.102524 -2.46715,-2.258424 -2.46715,-2.258424 l -0.93675,-2.451844 c -1.09876,0.419794 -2.26306,0.667544 -3.43754,0.731472 l 0.14265,2.620822 c 0,0 0.0192,1.25697 -1.3339,3.067245 -0.80426,-0.02709 -1.6066,-0.111239 -2.39899,-0.251604 -0.94809,-2.051624 -0.66849,-3.277254 -0.66849,-3.277254 l 0.6833,-2.534196 c -1.13566,-0.306213 -2.22322,-0.790136 -3.21097,-1.428761 l -1.42508,2.204138"
+       id="path4072-5-1-7"
+       inkscape:connector-curvature="0"
+       inkscape:path-effect="#path-effect4050-9-1-5"
+       inkscape:original-d="M 484.55417,49.762303 492.5,40.933609 504.27158,48.879434"
+       transform="matrix(0.26322611,0,0,0.26322611,-5.4745096,937.24827)" />
+    <path
+       sodipodi:nodetypes="cccccccccccccccccc"
+       transform="matrix(0.55525134,-9.5997878e-4,-9.5997878e-4,0.55525134,110.63891,863.25473)"
+       inkscape:connector-curvature="0"
+       id="path4208-6-0-2"
+       d="m 4.1190936,170.87651 1.316683,1.26576 1.7540206,0.003 5.5819788,-5.57043 3.523532,0.006 2.853557,-2.81689 0.0014,-1.68321 -1.169094,-1.16909 -2.365502,2.3822 -2.63185,-0.005 0.09078,-2.55314 2.365531,-2.36552 -1.277858,-1.27786 -1.648714,0.0359 -2.8505569,2.8535 0.00598,3.45613 -5.5530909,5.58201 z"
+       style="fill:none;stroke:#f2f2f2;stroke-width:0.80000001;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
   </g>
 </svg>
index 9a991b796e900033e6b16a7018228fe09241e5e0..03942c6cde861ad0743a0e3dafbaae46c3501ae0 100644 (file)
@@ -90,7 +90,7 @@ nav .nav-link{display:inline-block;width:22px;height:22px;overflow:hidden;margin
 #nav-home-link{background-position:-44px -132px;}#nav-home-link:hover{background-position:-66px -132px;}
 #nav-intro-link{background-position:0px -88px;}#nav-intro-link:hover{background-position:-22px -88px;}
 #nav-login-link,#nav-logout-link{background-position:0 -88px;}#nav-login-link:hover,#nav-logout-link:hover{background-position:-22px -88px;}
-#nav-manage-link{background-position:0px -22px;}#nav-manage-link:hover{background-position:-22px -22px;}
+#nav-manage-link{background-position:-88px -88px;}#nav-manage-link:hover{background-position:-110px -88px;}
 #nav-messages-link{background-position:-44px -88px;}#nav-messages-link:hover{background-position:-66px -88px;}
 #nav-notify-link,#nav-notifications-linkmenu{background-position:-44px -110px;}
 #nav-notify-link:hover{background-position:-66px -110px;}
index 87b405470cf06790d7a0ef367acadf3f72202c9e..3db91a8507b8d3faff6e9e8ff0c2cb30937f2a7d 100644 (file)
@@ -543,9 +543,9 @@ nav .nav-link {
     }
 }
 #nav-manage-link {
-    background-position: 0px -22px;
+    background-position: -88px -88px;
     &:hover {
-        background-position: -22px -22px;
+        background-position: -110px -88px;
     }
 }
 #nav-messages-link {
index bfad1b7b72e8871b48b172728444ca7b3d6d079f..35572caa0455e0ca344046d5d01d56f50e89b573 100644 (file)
@@ -1,5 +1,5 @@
-<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
@@ -47,7 +47,7 @@
        {{ endif }}
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 
 </div>
 
index 8d6f258e6e3745a9c0d5a92e5921db91323ef50a..d5cc7f16c8332f123b26466117f5a12cbc45c383 100644 (file)
@@ -1,6 +1,6 @@
 <a name="$item.id" ></a>
-<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
@@ -84,5 +84,5 @@
        $item.comment
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 </div>
diff --git a/view/theme/dispy/wall_thread.tpl b/view/theme/dispy/wall_thread.tpl
new file mode 100644 (file)
index 0000000..5f434d4
--- /dev/null
@@ -0,0 +1,115 @@
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+       <span id="hide-comments-total-$item.id" class="hide-comments-total">$item.num_comments</span> <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span>
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+<div id="tread-wrapper-$item.id" class="tread-wrapper $item.toplevel">
+<a name="$item.id" ></a>
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
+               <div class="wall-item-info" id="wall-item-info-$item.id">
+                       <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
+                                onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
+                                onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
+                                       <img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" />
+                               </a>
+                               <span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
+                               <div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
+                                       <ul>
+                                               $item.item_photo_menu
+                                       </ul>
+                               </div>
+                       </div>
+                       <div class="wall-item-photo-end"></div>
+                       <div class="wall-item-location" id="wall-item-location-$item.id">
+                               {{ if $item.location }}<span class="icon globe"></span>$item.location {{ endif }}
+                       </div>
+                       <div class="wall-item-author">
+                               <a href="$item.profile_url" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id">$item.name</span></a>
+                       </div>
+                       <div class="wall-item-ago" id="wall-item-ago-$item.id">
+                               $item.ago
+                       </div>
+               </div>
+               <div class="wall-item-tools" id="wall-item-tools-$item.id">
+                       <div class="wall-item-lock-wrapper">
+                               {{ if $item.lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /></div>
+                               {{ else }}<div class="wall-item-lock"></div>{{ endif }}
+                       </div>
+                       <ul class="wall-item-subtools1">
+                               {{ if $item.star }}
+                               <li>
+                                       <a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item icon $item.isstarred" title="$item.star.toggle"></a>
+                                       <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item icon tagged" title="$item.star.tagger"></a>
+                               </li>
+                               {{ endif }}
+                               {{ if $item.vote }}
+                               <li class="wall-item-like-buttons" id="wall-item-like-buttons-$item.id">
+                                       <a href="#" class="icon like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false"></a>
+                                       <a href="#" class="icon dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
+                                       {{ if $item.vote.share }}
+                                               <a href="#" id="share-$item.id"
+                                                       class="icon recycle wall-item-share-buttons" title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>{{ endif }}
+                                       <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+                               </li>
+                               {{ endif }}
+                       </ul><br style="clear:left;" />
+                       <ul class="wall-item-subtools2">
+                               {{ if $item.filer }}
+                               <li><a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item icon file-as" title="$item.filer"></a></li>
+                               {{ endif }}
+                               {{ if $item.plink }}
+                               <li class="wall-item-links-wrapper$item.sparkle"><a href="$item.plink.href" title="$item.plink.title" target="external-link" class="icon remote-link"></a></li>
+                               {{ endif }}
+                               {{ if $item.edpost }}
+                               <li><a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a></li>
+                               {{ endif }}
+                               <li class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$item.id">
+                               {{ if $item.drop.dropping }}<div><a href="item/drop/$item.id" onclick="return confirmDelete();" class="icon drophide" title="$item.drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a></div>{{ endif }}
+                               {{ if $item.drop.dropping }}<div><input type="checkbox" onclick="checkboxhighlight(this);" title="$item.drop.select" class="item-select" name="itemselected[]" value="$item.id" /></div>{{ endif }}
+                               </li>
+                       </ul>
+                       <div class="wall-item-delete-end"></div>
+               </div>
+               <div class="wall-item-content" id="wall-item-content-$item.id">
+                       <div class="wall-item-title" id="wall-item-title-$item.id">$item.title</div>
+                       <div class="wall-item-title-end"></div>
+                       <div class="wall-item-body" id="wall-item-body-$item.id">
+                               $item.body
+                               <div class="body-tag">
+                                       {{ for $item.tags as $tag }}
+                                               <span class='tag'>$tag</span>
+                                       {{ endfor }}
+                               </div>
+                       </div>
+               </div>
+       </div>
+       <div class="wall-item-wrapper-end"></div>
+       <div class="wall-item-like $item.indent" id="wall-item-like-$item.id">$item.like</div>
+       <div class="wall-item-dislike $item.indent" id="wall-item-dislike-$item.id">$item.dislike</div>
+       <div class="wall-item-comment-separator"></div>
+
+       {{ if $item.threaded }}
+       {{ if $item.comment }}
+       <div class="wall-item-comment-wrapper $item.indent" >
+               $item.comment
+       </div>
+       {{ endif }}
+       {{ endif }}
+
+       {{ if $item.flatten }}
+       <div class="wall-item-comment-wrapper" >
+               $item.comment
+       </div>
+       {{ endif }}
+
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
+</div>
+{{ for $item.children as $item }}
+       {{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+</div>
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
index f5187b710f474f453ff08c8d57d88bb04fea6f03..63c8a2e96bee53763c16dfbd4a80dd64b4b63039 100644 (file)
@@ -1,6 +1,6 @@
 <a name="$item.id" ></a>
-<div class="wall-item-outside-wrapper$item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info wallwall" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
                                <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
@@ -93,6 +93,6 @@ class="icon recycle wall-item-share-buttons"  title="$item.vote.share.0" onclick
        $item.comment
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 </div>
 
diff --git a/view/theme/dispy/wallwall_thread.tpl b/view/theme/dispy/wallwall_thread.tpl
new file mode 100644 (file)
index 0000000..cab97ca
--- /dev/null
@@ -0,0 +1,121 @@
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+       <span id="hide-comments-total-$item.id" class="hide-comments-total">$item.num_comments</span> <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span>
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+<div id="tread-wrapper-$item.id" class="tread-wrapper $item.toplevel">
+<a name="$item.id" ></a>
+<div class="wall-item-outside-wrapper $item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
+               <div class="wall-item-info wallwall" id="wall-item-info-$item.id">
+                       <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
+                               <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
+                               <img src="$item.owner_photo" class="wall-item-photo$item.osparkle" id="wall-item-ownerphoto-$item.id" style="height: 80px; width: 80px;" alt="$item.owner_name" /></a>
+                       </div>
+                       <div class="wall-item-arrowphoto-wrapper" ><img src="images/larrow.gif" alt="$item.wall" /></div>
+                       <div class="wall-item-photo-wrapper wwfrom" id="wall-item-photo-wrapper-$item.id" 
+                               onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')"
+                onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
+                               <img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" /></a>
+                               <span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
+                <div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
+                    <ul>
+                        $item.item_photo_menu
+                    </ul>
+                </div>
+
+                       </div>
+                       <div class="wall-item-photo-end"></div>
+                       <div class="wall-item-location" id="wall-item-location-$item.id">
+                               {{ if $item.location }}<span class="icon globe"></span>$item.location {{ endif }}
+                       </div>
+                       <div class="wall-item-author">
+                               <a href="$item.profile_url" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id">$item.name</span></a>
+                       </div>
+                       <div class="wall-item-ago" id="wall-item-ago-$item.id">
+                               $item.ago
+                       </div>
+               </div>
+               <div class="wall-item-tools" id="wall-item-tools-$item.id">
+                       <div class="wall-item-lock-wrapper">
+                               {{ if $item.lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /></div>
+                               {{ else }}<div class="wall-item-lock"></div>{{ endif }}
+                       </div>
+                       <ul class="wall-item-subtools1">
+                               {{ if $item.star }}
+                               <li>
+                                       <a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item icon $item.isstarred" title="$item.star.toggle"></a>
+                                       <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item icon tagged" title="$item.star.tagger"></a>
+                               </li>
+                               {{ endif }}
+                               {{ if $item.vote }}
+                               <li class="wall-item-like-buttons" id="wall-item-like-buttons-$item.id">
+                                       <a href="#" class="icon like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false"></a>
+                                       <a href="#" class="icon dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
+                                       {{ if $item.vote.share }}
+                                       <a href="#" id="share-$item.id"
+class="icon recycle wall-item-share-buttons"  title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>{{ endif }}
+                                       <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+                               </li>
+                               {{ endif }}
+                       </ul><br style="clear:left;" />
+                       <ul class="wall-item-subtools2">
+                       {{ if $item.filer }}
+                               <li class="wall-item-filer-wrapper"><a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item icon file-as" title="$item.star.filer"></a></li>
+                       {{ endif }}
+                       {{ if $item.plink }}
+                               <li class="wall-item-links-wrapper$item.sparkle"><a href="$item.plink.href" title="$item.plink.title" target="external-link" class="icon remote-link"></a></li>
+                       {{ endif }}
+                       {{ if $item.edpost }}
+                               <li><a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a></li>
+                       {{ endif }}
+
+                       <li class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$item.id" >
+                               {{ if $item.drop.dropping }}<a href="item/drop/$item.id" onclick="return confirmDelete();" class="icon drophide" title="$item.drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
+                               {{ if $item.drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$item.drop.select" class="item-select" name="itemselected[]" value="$item.id" />{{ endif }}
+                       </li>
+                       </ul>
+                       <div class="wall-item-delete-end"></div>
+               </div>
+               <div class="wall-item-content" id="wall-item-content-$item.id">
+                       <div class="wall-item-title" id="wall-item-title-$item.id">$item.title</div>
+                       <div class="wall-item-title-end"></div>
+                       <div class="wall-item-body" id="wall-item-body-$item.id">
+                               $item.body
+                               <div class="body-tag">
+                                       {{ for $item.tags as $tag }}
+                                               <span class="tag">$tag</span>
+                                       {{ endfor }}
+                               </div>                  
+                       </div>
+               </div>
+       </div>  
+       <div class="wall-item-wrapper-end"></div>
+       <div class="wall-item-like $item.indent" id="wall-item-like-$item.id">$item.like</div>
+       <div class="wall-item-dislike $item.indent" id="wall-item-dislike-$item.id">$item.dislike</div>
+       <div class="wall-item-comment-separator"></div>
+
+       {{ if $item.threaded }}
+       {{ if $item.comment }}
+       <div class="wall-item-comment-wrapper $item.indent" >
+               $item.comment
+       </div>
+       {{ endif }}
+       {{ endif }}
+
+       {{ if $item.flatten }}
+       <div class="wall-item-comment-wrapper" >
+               $item.comment
+       </div>
+       {{ endif }}
+
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
+</div>
+{{ for $item.children as $item }}
+       {{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+</div>
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
index ea24d95cc33e80e9060525582ca6e00989145747..f64ae753b6c82b26289021bd051280d5c3c947e6 100755 (executable)
@@ -1,5 +1,10 @@
                <div class="comment-wwedit-wrapper" id="comment-edit-wrapper-$id" style="display: block;">
-                       <form class="comment-edit-form" id="comment-edit-form-$id" action="item" method="post" onsubmit="post_comment($id); return false;">
+                       {{ if $threaded }}
+                       <span id="hide-commentbox-$id" class="hide-commentbox fakelink" onclick="showHideCommentBox($id);">$comment</span>
+                       <form class="comment-edit-form" style="display: none;" id="comment-edit-form-$id" action="item" method="post" onsubmit="post_comment($id); return false;">
+                       {{ else }}
+                       <form class="comment-edit-form" style="display: block;" id="comment-edit-form-$id" action="item" method="post" onsubmit="post_comment($id); return false;">
+                       {{ endif }}
                                <input type="hidden" name="type" value="$type" />
                                <input type="hidden" name="profile_uid" value="$profile_uid" />
                                <input type="hidden" name="parent" value="$parent" />
index 1be81d738e17200736a5cb8a144dd82bdb3d9ea1..5207cedf0db9ed714288dffb85f14461dd90a69d 100644 (file)
@@ -935,8 +935,19 @@ input#dfrn-url {
 
 }
 
-.wall-item-content-wrapper.comment {
+.tread-wrapper .tread-wrapper {
+       margin-left: 50px;
+}
+.tread-wrapper .wall-item-comment-wrapper {
+       margin-left: 50px;
+}
+
+.tread-end-wrapper {
        margin-left: 50px;
+}
+
+.wall-item-content-wrapper.comment {
+#      margin-left: 50px;
        background: #EEEEEE;
 }
 
@@ -1175,9 +1186,7 @@ input#dfrn-url {
 }
 
 .comment-wwedit-wrapper {
-       margin-top: 15px;
        background: #f3f3f3;
-       margin-left: 50px;
 }
 
 .comment-edit-photo {
index bfad1b7b72e8871b48b172728444ca7b3d6d079f..35572caa0455e0ca344046d5d01d56f50e89b573 100644 (file)
@@ -1,5 +1,5 @@
-<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
@@ -47,7 +47,7 @@
        {{ endif }}
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 
 </div>
 
index 2c88fc598ef914d6c64fed26b81eee8f834b09db..dda4bc4a90acbb930eda474c0d5645309f2122ad 100644 (file)
@@ -1,5 +1,5 @@
-<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
@@ -73,5 +73,5 @@
        $item.comment
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 </div>
index 211906c9343c995f5e0b8b7bd7ec3470e89f04a6..ba6131857fb51b7d2606d785a8c91ae60291e5e0 100644 (file)
@@ -1,5 +1,5 @@
-<div class="wall-item-outside-wrapper$item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info wallwall" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
                                <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
@@ -77,6 +77,6 @@
        $item.comment
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 </div>
 
index cc35b63050057d996079a5e8e1849cdda05eb6a1..11c624a86fb93758a18d8e4fc313879e71597935 100644 (file)
@@ -6,19 +6,24 @@ Photo album display?
 
 - Edit photo page: bottom buttons are off-center in Dolphin Mini
 
-- Pager: looks weird when only "prev" is there
-
 - BB code buttons for status updates
 
 - Get "add contact" back on contacts page
 
 - Admin: access to more pages than summary?
 
-- Embedded video playback is way too big
+- Find a way to show embedded videos at the normal size for tablets that can handle it
+
+- Need to find a way to deal with freakin annoying elements that don't respect screen width limits.
+  Specifically, need to find a way to keep them from forcing a horizontal scroll bar to show up and
+  making the rest of the body text overflow the item's borders that is screen-width sensitive (it's
+  annoying to have a 300px truncated code block on a 1024px wide screen). At least the following cause problems:
+       - code blocks
+       - blockquote blocks
+       - #reallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallylongtags
 
 - Needs to be faster!
        - Reduce DOM elements (~2400 for 10 items, ~8400 for 40 items)
-       - Automatically set limit of 10 items for Network and Profile?
-
 
 
+- Sometimes, when "Permission denied", wrong login page is shown
index bb00c2cccff79ef526648f7e6bbf8821b6003a26..91aeda035792e5c1f40aa40372a5448a6e6f1b0b 100644 (file)
@@ -9,6 +9,7 @@
        {{ inc field_textarea.tpl with $field=$banner }}{{ endinc }}
        {{ inc field_select.tpl with $field=$language }}{{ endinc }}
        {{ inc field_select.tpl with $field=$theme }}{{ endinc }}
+       {{ inc field_select.tpl with $field=$theme_mobile }}{{ endinc }}
        {{ inc field_select.tpl with $field=$ssl_policy }}{{ endinc }}
        
        <div class="submit"><input type="submit" name="page_site" value="$submit" /></div>
@@ -25,6 +26,8 @@
 
        <h3>$upload</h3>
        {{ inc field_input.tpl with $field=$maximagesize }}{{ endinc }}
+       {{ inc field_input.tpl with $field=$maximagelength }}{{ endinc }}
+       {{ inc field_input.tpl with $field=$jpegimagequality }}{{ endinc }}
        
        <h3>$corporate</h3>
        {{ inc field_input.tpl with $field=$allowed_sites }}{{ endinc }}
@@ -36,6 +39,8 @@
        {{ inc field_checkbox.tpl with $field=$diaspora_enabled }}{{ endinc }}
        {{ inc field_checkbox.tpl with $field=$dfrn_only }}{{ endinc }}
        {{ inc field_input.tpl with $field=$global_directory }}{{ endinc }}
+       {{ inc field_checkbox.tpl with $field=$thread_allow }}{{ endinc }}
+       {{ inc field_checkbox.tpl with $field=$newuser_public }}{{ endinc }}
        
        <div class="submit"><input type="submit" name="page_site" value="$submit" /></div>
        
index b5b0e9d289954f34b0fba8a04b1fa1729ef57b12..570db6842652d6b5dfadb7ba5061f8c3a6fb8ded 100755 (executable)
                });
                </script>-->
 
-               <div class="comment-wwedit-wrapper" id="comment-edit-wrapper-$id" style="display: block;" >
-                       <form class="comment-edit-form" id="comment-edit-form-$id" action="item" method="post" onsubmit="post_comment($id); return false;" >
+               <div class="comment-wwedit-wrapper $indent" id="comment-edit-wrapper-$id" style="display: block;" >
+                       <form class="comment-edit-form $indent" id="comment-edit-form-$id" action="item" method="post" onsubmit="post_comment($id); return false;" >
+<!--                   <span id="hide-commentbox-$id" class="hide-commentbox fakelink" onclick="showHideCommentBox($id);">$comment</span>
+                       <form class="comment-edit-form" style="display: none;" id="comment-edit-form-$id" action="item" method="post" onsubmit="post_comment($id); return false;">-->
                                <input type="hidden" name="type" value="$type" />
+                               <input type="hidden" name="source" value="$sourceapp" />
                                <input type="hidden" name="profile_uid" value="$profile_uid" />
                                <input type="hidden" name="parent" value="$parent" />
                                <input type="hidden" name="return" value="$return_path" />
index 99f96f4b6869cc4e008cafe1a7c5edb3268b82aa..b7feae3716f1583d78f4326c703ff88b606f2b3c 100644 (file)
@@ -6,23 +6,23 @@
   <?php if(x($page,'htmlhead')) echo $page['htmlhead'] ?>\r
 </head>\r
 <body>\r
+       <?php if(x($page,'nav')) echo $page['nav']; ?>\r
+\r
        <?php if( $a->module === 'home' ) { ?>\r
        <center>\r
        <div class="login-button">\r
        <a href="login" class="login-button-link"><img class="login-button-image" src="/images/friendika-1600.png" title="Click to log in"></a>\r
        </div>\r
        </center>\r
+\r
        <?php } elseif ( $a->module === 'login' || $a->module === 'register' || $a->module === 'lostpass' ) {\r
        ?>\r
-\r
        <div class='section-wrapper'>\r
        <section><?php if(x($page,'content')) echo $page['content']; ?>\r
        </section>\r
        </div>\r
 \r
-       <?php } else {\r
-\r
-       if(x($page,'nav')) echo $page['nav']; ?>\r
+       <?php } else { ?>\r
        <div class='main-container'>\r
                <div class='main-content-container'>\r
                <aside><?php if(x($page,'aside')) echo $page['aside']; ?></aside>\r
index 49633557b6435e88261192178df40a4039782585..993218133689c8843c19c9e9131928bf9a343641 100644 (file)
@@ -7,6 +7,7 @@
 </script>-->
 <script type="text/javascript" src="$baseurl/js/jquery.js" ></script>
 <script type="text/javascript">var $j = jQuery.noConflict();</script>
+<script type="text/javascript" src="$baseurl/view/theme/frost/js/jquery.divgrow-1.3.1.min.js" ></script>
 <script type="text/javascript" src="$baseurl/js/jquery.textinputs.js" ></script>
 <script type="text/javascript" src="$baseurl/view/theme/frost-mobile/js/fk.autocomplete.min.js" ></script>
 <!--<script type="text/javascript" src="$baseurl/library/fancybox/jquery.fancybox-1.3.4.pack.js"></script>-->
diff --git a/view/theme/frost-mobile/experimental b/view/theme/frost-mobile/experimental
deleted file mode 100644 (file)
index e69de29..0000000
index 8496667e135a2a834c0ac18a57766ba42619f3c7..a849f4459373648fd49412c7db040d2e7c4dcc94 100644 (file)
@@ -1,7 +1,10 @@
 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
-<meta content='width=device-width, minimum-scale=1 maximum-scale=1' name='viewport'>
+<!--<meta content='width=device-width, minimum-scale=1 maximum-scale=1' name='viewport'>
 <meta content='True' name='HandheldFriendly'>
-<meta content='320' name='MobileOptimized'>
+<meta content='320' name='MobileOptimized'>-->
+<meta name="viewport" content="width=device-width; initial-scale = 1.0; maximum-scale=1.0; user-scalable=no" />
+<!--<meta name="viewport" content="width=100%;  initial-scale=1; maximum-scale=1; minimum-scale=1; user-scalable=no;" />-->
+
 <base href="$baseurl/" />
 <meta name="generator" content="$generator" />
 <!--<link rel="stylesheet" href="$baseurl/library/fancybox/jquery.fancybox-1.3.4.css" type="text/css" media="screen" />
index 66a2c87962a528e034feb55b6cc23b8f045a1928..b7aafc5ed94ff64b91053ef1a9adf3ebac49a6ec 100644 (file)
@@ -11,6 +11,7 @@
        window.term = "$term";
        window.baseURL = "$baseurl";
        window.geoTag = function () { $geotag }
+       window.ajaxType = 'jot-header';
 </script>
 
 
index dcb542735f1a242ea089ef747b0d9136dfb23d7f..b491f448d739497535721fbd2e2569580c2485dc 100644 (file)
@@ -13,7 +13,7 @@
                <input type="hidden" name="location" id="jot-location" value="$defloc" />
                <input type="hidden" name="coord" id="jot-coord" value="" />
                <input type="hidden" name="post_id" value="$post_id" />
-               <input type="hidden" name="source" value="$mobileapp" />
+               <input type="hidden" name="source" value="$sourceapp" />
                <input type="hidden" name="preview" id="jot-preview" value="0" />
                <div id="jot-title-wrap"><input name="title" id="jot-title" type="text" placeholder="$placeholdertitle" value="$title" class="jothidden" style="display:none"></div>
                <div id="jot-category-wrap"><input name="category" id="jot-category" type="text" placeholder="$placeholdercategory" value="$category" class="jothidden" style="display:none" /></div>
diff --git a/view/theme/frost-mobile/js/fk.autocomplete.js b/view/theme/frost-mobile/js/fk.autocomplete.js
new file mode 100644 (file)
index 0000000..8ca73b1
--- /dev/null
@@ -0,0 +1,194 @@
+/**
+ * Friendica people autocomplete
+ *
+ * require jQuery, jquery.textareas
+ */
+               
+               
+function ACPopup(elm,backend_url){
+       this.idsel=-1;
+       this.element = elm;
+       this.searchText="";
+       this.ready=true;
+       this.kp_timer = false;
+       this.url = backend_url;
+
+       var w = 530;
+       var h = 130;
+
+
+       if(typeof elm.editorId == "undefined") {        
+               style = $j(elm).offset();
+               w = $j(elm).width();
+               h = $j(elm).height();
+       }
+       else {
+               var container = elm.getContainer();
+               if(typeof container != "undefined") {
+                       style = $j(container).offset();
+                       w = $j(container).width();
+               h = $j(container).height();
+               }
+       }
+
+       style.top=style.top+h;
+       style.width = w;
+       style.position = 'absolute';
+       /*      style['max-height'] = '150px';
+               style.border = '1px solid red';
+               style.background = '#cccccc';
+       
+               style.overflow = 'auto';
+               style['z-index'] = '100000';
+       */
+       style.display = 'none';
+       
+       this.cont = $j("<div class='acpopup'></div>");
+       this.cont.css(style);
+       
+       $j("body").append(this.cont);
+}
+ACPopup.prototype.close = function(){
+       $j(this.cont).remove();
+       this.ready=false;
+}
+ACPopup.prototype.search = function(text){
+       var that = this;
+       this.searchText=text;
+       if (this.kp_timer) clearTimeout(this.kp_timer);
+       this.kp_timer = setTimeout( function(){that._search();}, 500);
+}
+ACPopup.prototype._search = function(){        
+       console.log("_search");
+       var that = this;
+       var postdata = {
+               start:0,
+               count:100,
+               search:this.searchText,
+               type:'c',
+       }
+       
+       $j.ajax({
+               type:'POST',
+               url: this.url,
+               data: postdata,
+               dataType: 'json',
+               success:function(data){
+                       that.cont.html("");
+                       if (data.tot>0){
+                               that.cont.show();
+                               $j(data.items).each(function(){
+                                       html = "<img src='{0}' height='16px' width='16px'>{1} ({2})".format(this.photo, this.name, this.nick)
+                                               that.add(html, this.nick.replace(' ','') + '+' + this.id + ' - ' + this.link);
+                               });                     
+                       } else {
+                               that.cont.hide();
+                       }
+               }
+       });
+       
+}
+       ACPopup.prototype.add = function(label, value){
+       var that=this;
+       var elm = $j("<div class='acpopupitem' title='"+value+"'>"+label+"</div>");
+       elm.click(function(e){
+               t = $j(this).attr('title').replace(new RegExp(' \- .*'),'');
+               if(typeof(that.element.container) === "undefined") {
+                       el=$j(that.element);
+                       sel = el.getSelection();
+                       sel.start = sel.start- that.searchText.length;
+                       el.setSelection(sel.start,sel.end).replaceSelectedText(t+' ').collapseSelection(false);
+                       that.close();
+               }
+               else {
+                       txt = tinyMCE.activeEditor.getContent();
+                       //                      alert(that.searchText + ':' + t);
+                       newtxt = txt.replace(that.searchText,t+' ');
+                       tinyMCE.activeEditor.setContent(newtxt);
+                       tinyMCE.activeEditor.focus();
+                       that.close();
+               }
+       });
+       $j(this.cont).append(elm);
+}
+ACPopup.prototype.onkey = function(event){
+       if (event.keyCode == '13') {
+               if(this.idsel>-1) {
+                       this.cont.children()[this.idsel].click();
+                       event.preventDefault();
+               }
+               else
+                       this.close();
+       }
+       if (event.keyCode == '38') { //cursor up
+               cmax = this.cont.children().size()-1;
+               this.idsel--;
+               if (this.idsel<0) this.idsel=cmax;
+               event.preventDefault();
+       }
+       if (event.keyCode == '40' || event.keyCode == '9') { //cursor down
+               cmax = this.cont.children().size()-1;
+               this.idsel++;
+               if (this.idsel>cmax) this.idsel=0;
+               event.preventDefault();
+       }
+       
+       if (event.keyCode == '38' || event.keyCode == '40' || event.keyCode == '9') {
+               this.cont.children().removeClass('selected');
+               $j(this.cont.children()[this.idsel]).addClass('selected');
+       }
+       
+       if (event.keyCode == '27') { //ESC
+               this.close();
+       }
+}
+
+function ContactAutocomplete(element,backend_url){
+       this.pattern=/@([^ \n]+)$/;
+       this.popup=null;
+       var that = this;
+       
+       $j(element).unbind('keydown');
+       $j(element).unbind('keyup');
+       
+       $j(element).keydown(function(event){
+               if (that.popup!==null) that.popup.onkey(event);
+       });
+       
+       $j(element).keyup(function(event){
+               cpos = $j(this).getSelection();
+               if (cpos.start==cpos.end){
+                       match = $j(this).val().substring(0,cpos.start).match(that.pattern);
+                       if (match!==null){
+                               if (that.popup===null){
+                                       that.popup = new ACPopup(this, backend_url);
+                               }
+                               if (that.popup.ready && match[1]!==that.popup.searchText) that.popup.search(match[1]);
+                               if (!that.popup.ready) that.popup=null;
+                               
+                       } else {
+                               if (that.popup!==null) {that.popup.close(); that.popup=null;}
+                       }
+                       
+                       
+               }
+       });             
+       
+}
+
+
+/**
+ * jQuery plugin 'contact_autocomplete'
+ */
+(function( $ ){
+  $j.fn.contact_autocomplete = function(backend_url) {
+    this.each(function(){
+               new ContactAutocomplete(this, backend_url);
+       });
+  };
+})( jQuery );
+
+
+
+               
diff --git a/view/theme/frost-mobile/js/jquery.divgrow-1.3.1.min.js b/view/theme/frost-mobile/js/jquery.divgrow-1.3.1.min.js
new file mode 100644 (file)
index 0000000..fd08f7f
--- /dev/null
@@ -0,0 +1 @@
+(function ($) { var divgrowid = 0; $.fn.divgrow = function (options) { var options = $.extend({}, { initialHeight: 100, moreText: "+ Show More", lessText: "- Show Less", speed: 1000, showBrackets: true }, options); return this.each(function () { divgrowid++; obj = $(this); var fullHeight = obj.height() + 10; obj.css('height', options.initialHeight).css('overflow', 'hidden'); if (options.showBrackets) { obj.after('<p class="divgrow-brackets">[&hellip;]</p><a href="#" class="divgrow-showmore' + " divgrow-obj-" + divgrowid + '"' + '></a>') } else { obj.after('<a href="#" class="divgrow-showmore' + " divgrow-obj-" + divgrowid + '"' + '></a>') } $("a.divgrow-showmore").html(options.moreText); $("." + "divgrow-obj-" + divgrowid).toggle(function () { $(this).prevAll("div:first").animate({ height: fullHeight + "px" }, options.speed, function () { if (options.showBrackets) { $(this).nextAll("p.divgrow-brackets:first").fadeOut() } $(this).nextAll("a.divgrow-showmore:first").html(options.lessText) }) }, function () { $(this).prevAll("div:first").stop(true, false).animate({ height: options.initialHeight }, options.speed, function () { if (options.showBrackets) { $(this).nextAll("p.divgrow-brackets:first").stop(true, false).fadeIn() } $(this).nextAll("a.divgrow-showmore:first").stop(true, false).html(options.moreText) }) }) }) } })(jQuery);
\ No newline at end of file
index bffa7977ab0211cb12d22c10e76a2e626ac12b8d..15add4d6900845b365483ab1afe4ecb435e6167a 100644 (file)
 
                        // add a new thread
 
-                       $j('.tread-wrapper',data).each(function() {
+                       $j('.toplevel_item',data).each(function() {
                                var ident = $j(this).attr('id');
 
                                if($j('#' + ident).length == 0 && profile_page == 1) {
                        }
                        /* autocomplete @nicknames */
                        $j(".comment-edit-form  textarea").contact_autocomplete(baseurl+"/acl");
+
+                       var bimgs = $j(".wall-item-body > img").not(function() { return this.complete; });
+                       var bimgcount = bimgs.length;
+
+                       if (bimgcount) {
+                               bimgs.load(function() {
+                                       bimgcount--;
+                                       if (! bimgcount) {
+                                               collapseHeight();
+
+                                       }
+                               });
+                       } else {
+                               collapseHeight();
+                       }
+
+               });
+       }
+
+       function collapseHeight() {
+               $j(".wall-item-body").each(function() {
+                               if($j(this).height() > 310) {
+                               if(! $j(this).hasClass('divmore')) {
+                                       $j(this).divgrow({ initialHeight: 300, showBrackets: false, speed: 0 });
+                                       $j(this).addClass('divmore');
+                               }
+                       }                                       
                });
        }
 
 
        function getPosition(e) {
                var cursor = {x:0, y:0};
-               if ( e.pageX || e.pageY  ) {
-                       cursor.x = e.pageX;
-                       cursor.y = e.pageY;
+               if ( e.touches[0].pageX || e.touches[0].pageY  ) {
+                       cursor.x = e.touches[0].pageX;
+                       cursor.y = e.touches[0].pageY;
                }
                else {
-                       if( e.clientX || e.clientY ) {
-                               cursor.x = e.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft) - document.documentElement.clientLeft;
-                               cursor.y = e.clientY + (document.documentElement.scrollTop  || document.body.scrollTop)  - document.documentElement.clientTop;
+                       if( e.touches[0].clientX || e.touches[0].clientY ) {
+                               cursor.x = e.touches[0].clientX + (document.documentElement.scrollLeft || document.body.scrollLeft) - document.documentElement.clientLeft;
+                               cursor.y = e.touches[0].clientY + (document.documentElement.scrollTop  || document.body.scrollTop)  - document.documentElement.clientTop;
                        }
                        else {
-                               if( e.x || e.y ) {
-                                       cursor.x = e.x;
-                                       cursor.y = e.y;
+                               if( e.touches[0].x || e.touches[0].y ) {
+                                       cursor.touches[0].x = e.touches[0].x;
+                                       cursor.touches[0].y = e.touches[0].y;
                                }
                        }
                }
index 337f8e2490b3ddf5309611c0712d72b2888db3b2..405a5173e193dcf012b6cdb7bb043b2624199ffc 100644 (file)
@@ -1 +1 @@
-function openClose(e){document.getElementById(e).style.display=="block"?document.getElementById(e).style.display="none":document.getElementById(e).style.display="block"}function openMenu(e){document.getElementById(e).style.display="block"}function closeMenu(e){document.getElementById(e).style.display="none"}function NavUpdate(){if(!stopped){var e="ping"+(localUser!=0?"?f=&uid="+localUser:"");$j.get(e,function(e){$j(e).find("result").each(function(){$j("nav").trigger("nav-update",this),$j("#live-network").length&&(src="network",liveUpdate()),$j("#live-profile").length&&(src="profile",liveUpdate()),$j("#live-community").length&&(src="community",liveUpdate()),$j("#live-notes").length&&(src="notes",liveUpdate()),$j("#live-display").length&&liking&&(liking=0,window.location.href=window.location.href),$j("#live-photos").length&&liking&&(liking=0,window.location.href=window.location.href)})})}timer=setTimeout(NavUpdate,updateInterval)}function liveUpdate(){if(src==null||stopped||!profile_uid){$j(".like-rotator").hide();return}if($j(".comment-edit-text-full").length||in_progress){livetime&&clearTimeout(livetime),livetime=setTimeout(liveUpdate,1e4);return}livetime!=null&&(livetime=null),prev="live-"+src,in_progress=!0;var e=netargs.length?"/"+netargs:"",t="update_"+src+e+"&p="+profile_uid+"&page="+profile_page+"&msie="+(msie?1:0);$j.get(t,function(e){in_progress=!1,$j(".tread-wrapper",e).each(function(){var e=$j(this).attr("id");$j("#"+e).length==0&&profile_page==1?($j("img",this).each(function(){$j(this).attr("src",$j(this).attr("dst"))}),$j("#"+prev).after($j(this))):($j("img",this).each(function(){$j(this).attr("src",$j(this).attr("dst"))}),$j("#"+e).replaceWith($j(this))),prev=e}),$j(".like-rotator").hide(),commentBusy&&(commentBusy=!1,$j("body").css("cursor","auto")),$j(".comment-edit-form  textarea").contact_autocomplete(baseurl+"/acl")})}function imgbright(e){$j(e).removeClass("drophide").addClass("drop")}function imgdull(e){$j(e).removeClass("drop").addClass("drophide")}function dolike(e,t){unpause(),$j("#like-rotator-"+e.toString()).show(),$j.get("like/"+e.toString()+"?verb="+t,NavUpdate),liking=1}function dostar(e){e=e.toString(),$j.get("starred/"+e,function(t){t.match(/1/)?($j("#starred-"+e).addClass("starred"),$j("#starred-"+e).removeClass("unstarred"),$j("#star-"+e).addClass("hidden"),$j("#unstar-"+e).removeClass("hidden")):($j("#starred-"+e).addClass("unstarred"),$j("#starred-"+e).removeClass("starred"),$j("#star-"+e).removeClass("hidden"),$j("#unstar-"+e).addClass("hidden"))})}function getPosition(e){var t={x:0,y:0};if(e.pageX||e.pageY)t.x=e.pageX,t.y=e.pageY;else if(e.clientX||e.clientY)t.x=e.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft)-document.documentElement.clientLeft,t.y=e.clientY+(document.documentElement.scrollTop||document.body.scrollTop)-document.documentElement.clientTop;else if(e.x||e.y)t.x=e.x,t.y=e.y;return t}function lockview(e,t){e=e||window.event,cursor=getPosition(e),lockvisible?lockviewhide():(lockvisible=!0,$j.get("lockview/"+t,function(e){$j("#panel").html(e),$j("#panel").css({left:cursor.x+5,top:cursor.y+5}),$j("#panel").show()}))}function lockviewhide(){lockvisible=!1,$j("#panel").hide()}function post_comment(e){return unpause(),commentBusy=!0,$j("body").css("cursor","wait"),$j("#comment-preview-inp-"+e).val("0"),$j.post("item",$j("#comment-edit-form-"+e).serialize(),function(t){if(t.success){$j("#comment-edit-wrapper-"+e).hide(),$j("#comment-edit-text-"+e).val("");var n=document.getElementById("comment-edit-text-"+e);n&&commentClose(n,e),timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,10)}t.reload&&(window.location.href=t.reload)},"json"),!1}function preview_comment(e){return $j("#comment-preview-inp-"+e).val("1"),$j("#comment-edit-preview-"+e).show(),$j.post("item",$j("#comment-edit-form-"+e).serialize(),function(t){t.preview&&($j("#comment-edit-preview-"+e).html(t.preview),$j("#comment-edit-preview-"+e+" a").click(function(){return!1}))},"json"),!0}function preview_post(){return $j("#jot-preview").val("1"),$j("#jot-preview-content").show(),tinyMCE.triggerSave(),$j.post("item",$j("#profile-jot-form").serialize(),function(e){e.preview&&($j("#jot-preview-content").html(e.preview),$j("#jot-preview-content a").click(function(){return!1}))},"json"),$j("#jot-preview").val("0"),!0}function unpause(){totStopped=!1,stopped=!1,$j("#pause").html("")}function bin2hex(e){var t,n,r=0,i=[];e+="",r=e.length;for(n=0;n<r;n++)i[n]=e.charCodeAt(n).toString(16).replace(/^([\da-f])$/,"0$1");return i.join("")}function groupChangeMember(e,t,n){$j("body .fakelink").css("cursor","wait"),$j.get("group/"+e+"/"+t+"?t="+n,function(e){$j("#group-update-wrapper").html(e),$j("body .fakelink").css("cursor","auto")})}function profChangeMember(e,t){$j("body .fakelink").css("cursor","wait"),$j.get("profperm/"+e+"/"+t,function(e){$j("#prof-update-wrapper").html(e),$j("body .fakelink").css("cursor","auto")})}function contactgroupChangeMember(e,t){$j("body").css("cursor","wait"),$j.get("contactgroup/"+e+"/"+t,function(e){$j("body").css("cursor","auto")})}function checkboxhighlight(e){$j(e).is(":checked")?$j(e).addClass("checkeditem"):$j(e).removeClass("checkeditem")}function notifyMarkAll(){$j.get("notify/mark/all",function(e){timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,1e3)})}function fcFileBrowser(e,t,n,r){var i=baseurl+"/fbrowser/"+n+"/";return tinyMCE.activeEditor.windowManager.open({file:i,title:"File Browser",width:420,height:400,resizable:"yes",inline:"yes",close_previous:"no"},{window:r,input:e}),!1}function setupFieldRichtext(){tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:"fieldRichtext",plugins:"bbcode,paste, inlinepopups",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,file_browser_callback:"fcFileBrowser"})}function previewTheme(e){theme=$j(e).val(),$j.getJSON("pretheme?f=&theme="+theme,function(e){$j("#theme-preview").html('<div id="theme-desc">'+e.desc+'</div><div id="theme-version">'+e.version+'</div><div id="theme-credits">'+e.credits+'</div><a href="'+e.img+'"><img src="'+e.img+'" width="320" height="240" alt="'+theme+'" /></a>')})}var src=null,prev=null,livetime=null,msie=!1,stopped=!1,totStopped=!1,timer=null,pr=0,liking=0,in_progress=!1,langSelect=!1,commentBusy=!1,last_popup_menu=null,last_popup_button=null;$j(function(){function e(e){last_popup_menu&&"#"+last_popup_menu.attr("id")!==$j(e.target).attr("rel")&&(last_popup_menu.hide(),last_popup_menu.attr("id")=="nav-notifications-menu"&&$j("section").show(),last_popup_button.removeClass("selected"),last_popup_menu=null,last_popup_button=null)}$j.ajaxSetup({cache:!1}),msie=$j.browser.msie,$j(".onoff input").each(function(){val=$j(this).val(),id=$j(this).attr("id"),$j("#"+id+"_onoff ."+(val==0?"on":"off")).addClass("hidden")}),$j(".onoff > a").click(function(e){e.preventDefault();var t=$j(this).siblings("input"),n=1-t.val(),r=t.attr("id");$j("#"+r+"_onoff ."+(n==0?"on":"off")).addClass("hidden"),$j("#"+r+"_onoff ."+(n==1?"on":"off")).removeClass("hidden"),t.val(n)}),$j("img[rel^=#]").click(function(t){return e(t),menu=$j($j(this).attr("rel")),t.preventDefault(),t.stopPropagation(),menu.attr("popup")=="false"?!1:(menu.css("display")=="none"?($j(this).parent().addClass("selected"),menu.show(),menu.attr("id")=="nav-notifications-menu"&&$j("section").hide(),last_popup_menu=menu,last_popup_button=$j(this).parent()):($j(this).parent().removeClass("selected"),menu.hide(),menu.attr("id")=="nav-notifications-menu"&&$j("section").show(),last_popup_menu=null,last_popup_button=null),!1)}),$j("html").click(function(t){e(t)});var t=unescape($j("#nav-notifications-template[rel=template]").html()),n=unescape($j("<div>").append($j("#nav-notifications-see-all").clone()).html()),r=unescape($j("<div>").append($j("#nav-notifications-mark-all").clone()).html()),i=unescape($j("#nav-notifications-menu").html());$j("nav").bind("nav-update",function(e,s){var o=$j(s).find("invalid").text();o==1&&(window.location.href=window.location.href);var u=$j(s).find("net").text();u==0?(u="",$j("#net-update").removeClass("show")):$j("#net-update").addClass("show"),$j("#net-update").html(u);var a=$j(s).find("home").text();a==0?(a="",$j("#home-update").removeClass("show")):$j("#home-update").addClass("show"),$j("#home-update").html(a);var f=$j(s).find("intro").text();f==0?(f="",$j("#intro-update").removeClass("show")):$j("#intro-update").addClass("show"),$j("#intro-update").html(f);var l=$j(s).find("mail").text();l==0?(l="",$j("#mail-update").removeClass("show")):$j("#mail-update").addClass("show"),$j("#mail-update").html(l);var f=$j(s).find("intro").text();f==0?(f="",$j("#intro-update-li").removeClass("show")):$j("#intro-update-li").addClass("show"),$j("#intro-update-li").html(f);var l=$j(s).find("mail").text();l==0?(l="",$j("#mail-update-li").removeClass("show")):$j("#mail-update-li").addClass("show"),$j("#mail-update-li").html(l);var c=$j(s).find("notif");c.children("note").length==0?$j("#nav-notifications-menu").html(i):(nnm=$j("#nav-notifications-menu"),nnm.html(n+r),c.children("note").each(function(){e=$j(this),text=e.text().format("<span class='contactname'>"+e.attr("name")+"</span>"),html=t.format(e.attr("href"),e.attr("photo"),text,e.attr("date"),e.attr("seen")),nnm.append(html)})),notif=c.attr("count"),notif>0?$j("#nav-notifications-linkmenu").addClass("on"):$j("#nav-notifications-linkmenu").removeClass("on"),notif==0?(notif="",$j("#notify-update").removeClass("show")):$j("#notify-update").addClass("show"),$j("#notify-update").html(notif);var h=$j(s).find("sysmsgs");h.children("notice").each(function(){text=$j(this).text(),$j.jGrowl(text,{sticky:!1,theme:"notice",life:1500})}),h.children("info").each(function(){text=$j(this).text(),$j.jGrowl(text,{sticky:!1,theme:"info",life:1e3})})}),NavUpdate()});var lockvisible=!1;String.prototype.format=function(){var e=this;for(var t=0;t<arguments.length;t++){var n=new RegExp("\\{"+t+"\\}","gi");e=e.replace(n,arguments[t])}return e},Array.prototype.remove=function(e){to=undefined,from=this.indexOf(e);var t=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,t)};
\ No newline at end of file
+function openClose(e){document.getElementById(e).style.display=="block"?document.getElementById(e).style.display="none":document.getElementById(e).style.display="block"}function openMenu(e){document.getElementById(e).style.display="block"}function closeMenu(e){document.getElementById(e).style.display="none"}function NavUpdate(){if(!stopped){var e="ping"+(localUser!=0?"?f=&uid="+localUser:"");$j.get(e,function(e){$j(e).find("result").each(function(){$j("nav").trigger("nav-update",this),$j("#live-network").length&&(src="network",liveUpdate()),$j("#live-profile").length&&(src="profile",liveUpdate()),$j("#live-community").length&&(src="community",liveUpdate()),$j("#live-notes").length&&(src="notes",liveUpdate()),$j("#live-display").length&&liking&&(liking=0,window.location.href=window.location.href),$j("#live-photos").length&&liking&&(liking=0,window.location.href=window.location.href)})})}timer=setTimeout(NavUpdate,updateInterval)}function liveUpdate(){if(src==null||stopped||!profile_uid){$j(".like-rotator").hide();return}if($j(".comment-edit-text-full").length||in_progress){livetime&&clearTimeout(livetime),livetime=setTimeout(liveUpdate,1e4);return}livetime!=null&&(livetime=null),prev="live-"+src,in_progress=!0;var e=netargs.length?"/"+netargs:"",t="update_"+src+e+"&p="+profile_uid+"&page="+profile_page+"&msie="+(msie?1:0);$j.get(t,function(e){in_progress=!1,$j(".toplevel_item",e).each(function(){var e=$j(this).attr("id");$j("#"+e).length==0&&profile_page==1?($j("img",this).each(function(){$j(this).attr("src",$j(this).attr("dst"))}),$j("#"+prev).after($j(this))):($j("img",this).each(function(){$j(this).attr("src",$j(this).attr("dst"))}),$j("#"+e).replaceWith($j(this))),prev=e}),$j(".like-rotator").hide(),commentBusy&&(commentBusy=!1,$j("body").css("cursor","auto")),$j(".comment-edit-form  textarea").contact_autocomplete(baseurl+"/acl");var t=$j(".wall-item-body > img").not(function(){return this.complete}),n=t.length;n?t.load(function(){n--,n||collapseHeight()}):collapseHeight()})}function collapseHeight(){$j(".wall-item-body").each(function(){$j(this).height()>310&&($j(this).hasClass("divmore")||($j(this).divgrow({initialHeight:300,showBrackets:!1,speed:0}),$j(this).addClass("divmore")))})}function imgbright(e){$j(e).removeClass("drophide").addClass("drop")}function imgdull(e){$j(e).removeClass("drop").addClass("drophide")}function dolike(e,t){unpause(),$j("#like-rotator-"+e.toString()).show(),$j.get("like/"+e.toString()+"?verb="+t,NavUpdate),liking=1}function dostar(e){e=e.toString(),$j.get("starred/"+e,function(t){t.match(/1/)?($j("#starred-"+e).addClass("starred"),$j("#starred-"+e).removeClass("unstarred"),$j("#star-"+e).addClass("hidden"),$j("#unstar-"+e).removeClass("hidden")):($j("#starred-"+e).addClass("unstarred"),$j("#starred-"+e).removeClass("starred"),$j("#star-"+e).removeClass("hidden"),$j("#unstar-"+e).addClass("hidden"))})}function getPosition(e){var t={x:0,y:0};if(e.touches[0].pageX||e.touches[0].pageY)t.x=e.touches[0].pageX,t.y=e.touches[0].pageY;else if(e.touches[0].clientX||e.touches[0].clientY)t.x=e.touches[0].clientX+(document.documentElement.scrollLeft||document.body.scrollLeft)-document.documentElement.clientLeft,t.y=e.touches[0].clientY+(document.documentElement.scrollTop||document.body.scrollTop)-document.documentElement.clientTop;else if(e.touches[0].x||e.touches[0].y)t.touches[0].x=e.touches[0].x,t.touches[0].y=e.touches[0].y;return t}function lockview(e,t){e=e||window.event,cursor=getPosition(e),lockvisible?lockviewhide():(lockvisible=!0,$j.get("lockview/"+t,function(e){$j("#panel").html(e),$j("#panel").css({left:cursor.x+5,top:cursor.y+5}),$j("#panel").show()}))}function lockviewhide(){lockvisible=!1,$j("#panel").hide()}function post_comment(e){return unpause(),commentBusy=!0,$j("body").css("cursor","wait"),$j("#comment-preview-inp-"+e).val("0"),$j.post("item",$j("#comment-edit-form-"+e).serialize(),function(t){if(t.success){$j("#comment-edit-wrapper-"+e).hide(),$j("#comment-edit-text-"+e).val("");var n=document.getElementById("comment-edit-text-"+e);n&&commentClose(n,e),timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,10)}t.reload&&(window.location.href=t.reload)},"json"),!1}function preview_comment(e){return $j("#comment-preview-inp-"+e).val("1"),$j("#comment-edit-preview-"+e).show(),$j.post("item",$j("#comment-edit-form-"+e).serialize(),function(t){t.preview&&($j("#comment-edit-preview-"+e).html(t.preview),$j("#comment-edit-preview-"+e+" a").click(function(){return!1}))},"json"),!0}function preview_post(){return $j("#jot-preview").val("1"),$j("#jot-preview-content").show(),tinyMCE.triggerSave(),$j.post("item",$j("#profile-jot-form").serialize(),function(e){e.preview&&($j("#jot-preview-content").html(e.preview),$j("#jot-preview-content a").click(function(){return!1}))},"json"),$j("#jot-preview").val("0"),!0}function unpause(){totStopped=!1,stopped=!1,$j("#pause").html("")}function bin2hex(e){var t,n,r=0,i=[];e+="",r=e.length;for(n=0;n<r;n++)i[n]=e.charCodeAt(n).toString(16).replace(/^([\da-f])$/,"0$1");return i.join("")}function groupChangeMember(e,t,n){$j("body .fakelink").css("cursor","wait"),$j.get("group/"+e+"/"+t+"?t="+n,function(e){$j("#group-update-wrapper").html(e),$j("body .fakelink").css("cursor","auto")})}function profChangeMember(e,t){$j("body .fakelink").css("cursor","wait"),$j.get("profperm/"+e+"/"+t,function(e){$j("#prof-update-wrapper").html(e),$j("body .fakelink").css("cursor","auto")})}function contactgroupChangeMember(e,t){$j("body").css("cursor","wait"),$j.get("contactgroup/"+e+"/"+t,function(e){$j("body").css("cursor","auto")})}function checkboxhighlight(e){$j(e).is(":checked")?$j(e).addClass("checkeditem"):$j(e).removeClass("checkeditem")}function notifyMarkAll(){$j.get("notify/mark/all",function(e){timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,1e3)})}function fcFileBrowser(e,t,n,r){var i=baseurl+"/fbrowser/"+n+"/";return tinyMCE.activeEditor.windowManager.open({file:i,title:"File Browser",width:420,height:400,resizable:"yes",inline:"yes",close_previous:"no"},{window:r,input:e}),!1}function setupFieldRichtext(){tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:"fieldRichtext",plugins:"bbcode,paste, inlinepopups",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,file_browser_callback:"fcFileBrowser"})}function previewTheme(e){theme=$j(e).val(),$j.getJSON("pretheme?f=&theme="+theme,function(e){$j("#theme-preview").html('<div id="theme-desc">'+e.desc+'</div><div id="theme-version">'+e.version+'</div><div id="theme-credits">'+e.credits+'</div><a href="'+e.img+'"><img src="'+e.img+'" width="320" height="240" alt="'+theme+'" /></a>')})}var src=null,prev=null,livetime=null,msie=!1,stopped=!1,totStopped=!1,timer=null,pr=0,liking=0,in_progress=!1,langSelect=!1,commentBusy=!1,last_popup_menu=null,last_popup_button=null;$j(function(){function e(e){last_popup_menu&&"#"+last_popup_menu.attr("id")!==$j(e.target).attr("rel")&&(last_popup_menu.hide(),last_popup_menu.attr("id")=="nav-notifications-menu"&&$j("section").show(),last_popup_button.removeClass("selected"),last_popup_menu=null,last_popup_button=null)}$j.ajaxSetup({cache:!1}),msie=$j.browser.msie,$j(".onoff input").each(function(){val=$j(this).val(),id=$j(this).attr("id"),$j("#"+id+"_onoff ."+(val==0?"on":"off")).addClass("hidden")}),$j(".onoff > a").click(function(e){e.preventDefault();var t=$j(this).siblings("input"),n=1-t.val(),r=t.attr("id");$j("#"+r+"_onoff ."+(n==0?"on":"off")).addClass("hidden"),$j("#"+r+"_onoff ."+(n==1?"on":"off")).removeClass("hidden"),t.val(n)}),$j("img[rel^=#]").click(function(t){return e(t),menu=$j($j(this).attr("rel")),t.preventDefault(),t.stopPropagation(),menu.attr("popup")=="false"?!1:(menu.css("display")=="none"?($j(this).parent().addClass("selected"),menu.show(),menu.attr("id")=="nav-notifications-menu"&&$j("section").hide(),last_popup_menu=menu,last_popup_button=$j(this).parent()):($j(this).parent().removeClass("selected"),menu.hide(),menu.attr("id")=="nav-notifications-menu"&&$j("section").show(),last_popup_menu=null,last_popup_button=null),!1)}),$j("html").click(function(t){e(t)});var t=unescape($j("#nav-notifications-template[rel=template]").html()),n=unescape($j("<div>").append($j("#nav-notifications-see-all").clone()).html()),r=unescape($j("<div>").append($j("#nav-notifications-mark-all").clone()).html()),i=unescape($j("#nav-notifications-menu").html());$j("nav").bind("nav-update",function(e,s){var o=$j(s).find("invalid").text();o==1&&(window.location.href=window.location.href);var u=$j(s).find("net").text();u==0?(u="",$j("#net-update").removeClass("show")):$j("#net-update").addClass("show"),$j("#net-update").html(u);var a=$j(s).find("home").text();a==0?(a="",$j("#home-update").removeClass("show")):$j("#home-update").addClass("show"),$j("#home-update").html(a);var f=$j(s).find("intro").text();f==0?(f="",$j("#intro-update").removeClass("show")):$j("#intro-update").addClass("show"),$j("#intro-update").html(f);var l=$j(s).find("mail").text();l==0?(l="",$j("#mail-update").removeClass("show")):$j("#mail-update").addClass("show"),$j("#mail-update").html(l);var f=$j(s).find("intro").text();f==0?(f="",$j("#intro-update-li").removeClass("show")):$j("#intro-update-li").addClass("show"),$j("#intro-update-li").html(f);var l=$j(s).find("mail").text();l==0?(l="",$j("#mail-update-li").removeClass("show")):$j("#mail-update-li").addClass("show"),$j("#mail-update-li").html(l);var c=$j(s).find("notif");c.children("note").length==0?$j("#nav-notifications-menu").html(i):(nnm=$j("#nav-notifications-menu"),nnm.html(n+r),c.children("note").each(function(){e=$j(this),text=e.text().format("<span class='contactname'>"+e.attr("name")+"</span>"),html=t.format(e.attr("href"),e.attr("photo"),text,e.attr("date"),e.attr("seen")),nnm.append(html)})),notif=c.attr("count"),notif>0?$j("#nav-notifications-linkmenu").addClass("on"):$j("#nav-notifications-linkmenu").removeClass("on"),notif==0?(notif="",$j("#notify-update").removeClass("show")):$j("#notify-update").addClass("show"),$j("#notify-update").html(notif);var h=$j(s).find("sysmsgs");h.children("notice").each(function(){text=$j(this).text(),$j.jGrowl(text,{sticky:!1,theme:"notice",life:1500})}),h.children("info").each(function(){text=$j(this).text(),$j.jGrowl(text,{sticky:!1,theme:"info",life:1e3})})}),NavUpdate()});var lockvisible=!1;String.prototype.format=function(){var e=this;for(var t=0;t<arguments.length;t++){var n=new RegExp("\\{"+t+"\\}","gi");e=e.replace(n,arguments[t])}return e},Array.prototype.remove=function(e){to=undefined,from=this.indexOf(e);var t=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,t)};
\ No newline at end of file
index 6cbeb2a32cb8b86889f3e30c6bb3a32ee77cef9c..e9024cf5a3d80c9f6d3b35c2eb25806f893692ed 100644 (file)
@@ -1,8 +1,8 @@
 $j(document).ready(function() {
 
-               /* enable tinymce on focus and click */
-               $j("#profile-jot-text").focus(enableOnUser);
-               $j("#profile-jot-text").click(enableOnUser);
+       /* enable tinymce on focus and click */
+       $j("#profile-jot-text").focus(enableOnUser);
+       $j("#profile-jot-text").click(enableOnUser);
 
        if(typeof window.AjaxUpload != "undefined") {
                switch(window.ajaxType) {
@@ -544,6 +544,15 @@ function showHideComments(id) {
        }
 }
 
+/*function showHideCommentBox(id) {
+       if( $j('#comment-edit-form-' + id).is(':visible')) {
+               $j('#comment-edit-form-' + id).hide();
+       }
+       else {
+               $j('#comment-edit-form-' + id).show();
+       }
+}*/
+
 
 /*function deleteCheckedItems() {
        var checkedstr = '';
index 5283c584ba7c520e56d6699856f04c801279aaaa..5c07aba77222008280030daf43b3ec687485960d 100644 (file)
@@ -15,6 +15,26 @@ a:hover {text-decoration: underline; }
 
 img { border :0px; }
 
+nav {
+       display: none;
+}
+
+/* popup notifications */
+div.jGrowl div.notice {
+  background: #511919 url("../../../images/icons/48/notice.png") no-repeat 5px center;
+  color: #ffffff;
+  padding-left: 58px;
+}
+div.jGrowl div.info {
+  background: #364e59 url("../../../images/icons/48/info.png") no-repeat 5px center;
+  color: #ffffff;
+  padding-left: 58px;
+}
+#jGrowl.top-right {
+       top: 15px;
+       right: 15px;
+}
+
 .login-button {
        margin-top: 90px;
        margin-left: auto;
@@ -26,7 +46,7 @@ img.login-button-image {
        max-width: 300px;
 }
 
-.section-wrapper {
+div.section-wrapper {
        position: relative;
        width: 300px;
        margin-left: auto;
@@ -45,6 +65,8 @@ img.login-button-image {
 .field label {
        margin-left: 25px;
        font-weight: 700;
+       float: none;
+       width: auto;
 }
 
 .field input {
@@ -62,6 +84,7 @@ img.login-button-image {
        background-position: 0 50%;
        width: 182px;
        padding-left: 18px;
+       margin-left: 50px;
 }
 
 #login-footer {
diff --git a/view/theme/frost-mobile/login_head.tpl b/view/theme/frost-mobile/login_head.tpl
new file mode 100644 (file)
index 0000000..7a5d606
--- /dev/null
@@ -0,0 +1,2 @@
+<link rel="stylesheet" href="$baseurl/view/theme/frost-mobile/login-style.css" type="text/css" media="all" />
+
diff --git a/view/theme/frost-mobile/mail_conv.tpl b/view/theme/frost-mobile/mail_conv.tpl
new file mode 100644 (file)
index 0000000..3529fcf
--- /dev/null
@@ -0,0 +1,18 @@
+<div class="mail-conv-outside-wrapper">
+       <div class="mail-conv-sender" >
+               <a href="$mail.from_url" class="mail-conv-sender-url" ><img class="mframe mail-conv-sender-photo$mail.sparkle" src="$mail.from_photo" heigth="80" width="80" alt="$mail.from_name" /></a>
+       </div>
+       <div class="mail-conv-detail" >
+               <div class="mail-conv-sender-name" >$mail.from_name</div>
+               <div class="mail-conv-date">$mail.date</div>
+               <div class="mail-conv-subject">$mail.subject</div>
+       </div>
+       <div class="mail-conv-body">$mail.body</div>
+</div>
+<div class="mail-conv-outside-wrapper-end"></div>
+
+
+<div class="mail-conv-delete-wrapper" id="mail-conv-delete-wrapper-$mail.id" ><a href="message/drop/$mail.id" class="icon drophide delete-icon mail-list-delete-icon" onclick="return confirmDelete();" title="$mail.delete" id="mail-conv-delete-icon-$mail.id" class="mail-conv-delete-icon" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a></div>
+<div class="mail-conv-delete-end"></div>
+
+<hr class="mail-conv-break" />
diff --git a/view/theme/frost-mobile/mobile b/view/theme/frost-mobile/mobile
new file mode 100644 (file)
index 0000000..e69de29
index 54f7b54ca5735d16cf84a83d12ae12d9d9243ac0..232583fead39bdba9f85630fa670c78b63fed43b 100644 (file)
                <a id="nav-register-link" class="nav-load-page-link $nav.register.2 $sel.register" href="$nav.register.0" title="$nav.register.3" >$nav.register.1</a>
                {{ endif }}
 
+               {{ if $nav.settings }}
+               <li><a id="nav-settings-link" class="$nav.settings.2 nav-load-page-link" href="$nav.settings.0" title="$nav.settings.3">$nav.settings.1</a></li>
+               {{ endif }}
+
                {{ if $nav.manage }}
                <li>
                <a id="nav-manage-link" class="nav-load-page-link $nav.manage.2 $sel.manage" href="$nav.manage.0" title="$nav.manage.3">$nav.manage.1</a>
                </li>
                {{ endif }}
 
-               {{ if $nav.settings }}
-               <li><a id="nav-settings-link" class="$nav.settings.2 nav-load-page-link" href="$nav.settings.0" title="$nav.settings.3">$nav.settings.1</a></li>
-               {{ endif }}
-
                {{ if $nav.profiles }}
                <li><a id="nav-profiles-link" class="$nav.profiles.2 nav-load-page-link" href="$nav.profiles.0" title="$nav.profiles.3" >$nav.profiles.1</a></li>
                {{ endif }}
diff --git a/view/theme/frost-mobile/profile_photo.tpl b/view/theme/frost-mobile/profile_photo.tpl
new file mode 100644 (file)
index 0000000..42fc139
--- /dev/null
@@ -0,0 +1,19 @@
+<h1>$title</h1>
+
+<form enctype="multipart/form-data" action="profile_photo" method="post">
+<input type='hidden' name='form_security_token' value='$form_security_token'>
+
+<div id="profile-photo-upload-wrapper">
+<label id="profile-photo-upload-label" for="profile-photo-upload">$lbl_upfile </label>
+<input name="userfile" type="file" id="profile-photo-upload" size="25" />
+</div>
+
+<div id="profile-photo-submit-wrapper">
+<input type="submit" name="submit" id="profile-photo-submit" value="$submit">
+</div>
+
+</form>
+
+<div id="profile-photo-link-select-wrapper">
+$select
+</div>
index ea80faa476f0cba863cf4390894c33d6c44b3e6f..7e3d47d34109e6241d70d7a0767d0acefaad9889 100644 (file)
-/**
- * duepuntozero Frindika style
- * Fabio Comuni <fabrix.xm@gmail.com>
- *
- * Heavily modified for Frost Mobile
- * Zach P
- */
-
-
-/* generals */
-html {
-       width: 320px;
-       margin-left: auto;
-       margin-right: auto;
-}
-
-body {
-       font-family: helvetica,arial,freesans,clean,sans-serif;
-       font-size: 16px;
-/*     line-height: 24px;*/
-       background-color: #ffffff;
-       background-image: url(head.jpg);
-       background-repeat: repeat-x;
-       color: #505050;
-       margin: 0px;
-}
-
-div.container {
-       display: block;
-/*     width: 100%;*/
-       margin-top: 0px;
-       margin-bottom: 0px;
-       margin-left: auto;
-       margin-right: auto;
-}
-
-a, a:visited, a:link { color: #3465a4; text-decoration: none; }
-a:hover {text-decoration: underline; }
-
-input {
-       border: 1px solid #666666;
-       -moz-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;     
-       padding: 3px;
-}
-
-img { border :0px; }
-
-#id_openid_url, .openid input {
-   background: url(login-bg.gif) no-repeat;
-   background-position: 0 50%;
-   padding-left: 18px;
-   width: 252px;
-   margin-left: 20px;
-}
-.openid:hover {
-
-}
-
-/*#id_openid_url {
-       width: 384px;
-}*/
-
-code {
-       font-family: Courier, monospace;
-       white-space: pre;
-       display: block;
-       overflow: auto;
-       border: 1px solid #444;
-       background: #EEE;
-       color: #444;
-       padding: 10px;
-       margin-top: 20px; 
-}
-
-blockquote {
-       background-color: #f4f8f9;
-       border-left: 4px solid #dae4ee;
-       padding: 0.4em;
-}
-
-.icollapse-wrapper, .ccollapse-wrapper {
-       border: 1px solid #CCC;
-       padding: 5px;
-}
-
-.hide-comments-outer {
-       margin-left: 0px;
-       font-weight: 700;
-       opacity: 0.6;
-}
-.hide-comments {
-       margin-left: 5px;
-}
-
-#panel {
-       background-color: ivory;
-       position: absolute;
-       z-index: 2;
-       width: 30%;
-       padding: 25px;
-       border: 1px solid #444;
-}
-
-.heart {
-       color: #FF0000;
-       font-size: 100%;
-       margin-right: 5px;
-}
-
-
-
-/* nav */
-nav {
-       height: 94px;
-/*     width: 100%;*/
-       width: 320px;
-       display: block;
-       margin-top: 0px;
-       margin-bottom: 0px;
-       margin-left: auto;
-       margin-right: auto;
-}
-nav #site-location {
-       color: #888a85;
-       font-size: 0.8em;
-       position: absolute;
-}
-
-.error-message {
-       color: #FF0000;
-       font-size: 1.1em;
-       border: 1px solid #FF8888;
-       background-color: #FFEEEE;
-       padding: 10px;
-}
-
-.info-message {
-       color: #204a87;
-       font-size: 1.1em;
-       border: 1px solid #3465a4;
-       background-color: #d7e3f1;
-       padding: 10px;
-}
-
-
-nav #banner {
-/*     display: block;*/
-       display: none;
-       margin-top: 14px;
-       position: absolute;
-}
-nav #banner #logo-text a {
-       display: none;
-       font-size: 40px;
-       font-weight: bold;
-       margin-left: 3px;
-       color: #000000;
-
-}
-nav #banner #logo-text a:hover { text-decoration: none; }
-
-
-/* ZP REMOVE? nav-commlink */
-.nav-commlink, .nav-login-link {
-       display: block;
-       height: 15px;
-       margin-top: 67px;
-       margin-right: 2px;
-       /*padding: 6px 10px;*/
-       padding: 6px 3px;
-       float: left;
-       bottom: 140px;
-       border: 1px solid #babdb6;
-       border-bottom: 0px;
-       background-color: #aec0d3;
-       color: #565854;         
-       -moz-border-radius: 3px 3px 0px 0px;
-       -webkit-border-radius: 3px 3px 0px 0px;
-       border-radius: 3px 3px 0px 0px; 
-}
-
-.nav-commlink.selected {
-       background-color: #ffffff;
-       border-bottom: 1px solid #ffffff;
-       color: #000000 !important;
-       margin-top: 64px;
-       padding-top: 6px;
-       padding-bottom: 8px;
-}
-
-.nav-ajax-left.show {
-       position: absolute;
-       font-size: 0.8em;
-       top: 22px;
-       right: 2px;
-       padding: 1px 2px;
-       border-radius: 4px;
-       -moz-border-radius: 4px;
-       -webkit-border-radius: 4px;
-       background-color: gold !important;
-}
-
-
-
-nav #nav-link-wrapper .nav-link {
-       /*border-right: 1px solid #babdb6;*/
-}
-
-nav .nav-link {
-       margin-top: 24px;
-       margin-bottom: 0.2em;
-       margin-right: 1em;
-       margin-left: 1em;
-       background-color: transparent !important;
-}
-
-.nav-button-container {
-       float: right;
-       position: relative;
-}
-
-.nav-button-container .nav-ajax-left {
-}
-
-.nav-menu-list {
-       text-align: center;
-       text-size: 18px;
-       line-height: 24px;
-
-       border-left: 1px solid #aaa;/*#444444;*/
-       border-right: 1px solid #aaa;
-       border-top: 1px solid #aaa;
-       border-bottom: 1px solid #aaa;
-
-       background: #FFFFFF;
-
-       display: none;
-       list-style: none;
-
-       width: 8em;
-       position: absolute;
-       margin: 0px;
-/*     right: -33px;*/
-       padding: 1em 0px;
-
-       -moz-box-shadow: 3px 3px 5px #555;
-       -webkit-box-shadow: 3px 3px 5px #555;
-       box-shadow: 3px 3px 5px #555;
-
-       z-index: 10000;
-}
-
-#network-menu-list {
-       left: 3px;
-}
-
-#contacts-menu-list {
-       right: -30px;
-}
-
-#system-menu-list {
-       right: 3px;
-}
-
-
-div.main-container {
-/*     width: 100%;*/
-       margin: 0px auto;
-       display: block;
-       position: relative;
-}
-
-/*div.main-content-loading {
-       position: absolute;
-       top: 200px;
-       left: 50%;
-       display: none;
-}*/
-
-
-/* aside */
-aside {
-/*     display: block;*/
-       display: none;
-       min-height: 112px;
-
-       width: 250px;
-
-       padding: 1em;
-       margin: 1em 0px 0px 0px;
-
-       position: absolute;
-
-/*     float:left;*/
-}
-
-#dfrn-request-link {
-       display: block;
-       color: #FFFFFF;
-       -webkit-border-radius: 5px ;
-       -moz-border-radius: 5px;
-       border-radius: 5px;
-       padding: 5px;
-       font-weight: bold;
-       background: #3465a4 url('friendika-16.png') no-repeat 95% center;
-}
-#wallmessage-link {
-       display: block;
-       color: #FFFFFF;
-       -webkit-border-radius: 5px ;
-       -moz-border-radius: 5px;
-       border-radius: 5px;
-       padding: 5px;
-       font-weight: bold;
-       background-color: #3465a4;
-}
-
-/* section */
-div.section-wrapper {
-/*     width: 100%;*/
-       width: 320px;
-
-       margin-left: auto;
-       margin-right: auto;
-
-       /*padding-right:2em;*/
-
-       display: block;
-
-       background-color: #ffffff;
-       background-image: url(border.jpg);
-       background-position: top right;
-       background-repeat: no-repeat;
-}
-
-section {
-       margin: 0px 0px 0px 0px;
-
-       padding-left: 5px;
-       padding-right: 5px;
-       padding-top: 1em;
-       padding-bottom: 3em;
-
-       background-image: url(border.jpg);
-       background-position: top left;
-       background-repeat: no-repeat;
-
-       min-height: 112px;
-       border-top: 1px solid #babdb6;  
-}
-
-.tabs {
-       /*background-image: url(head.jpg);
-       background-repeat: repeat-x;    
-       background-position: 0px -20px;*/
-       border-bottom: 1px solid #babdb6;
-       padding:0px;
-}
-.tabs li { margin: 0px 0px 20px 0px; padding-left: 1em; list-style: none; }
-.tabs a {
-       padding: 0.4em 2em;
-       border: 1px solid #aaa;
-       border-radius: 8px;
-       -moz-border-radius: 8px;
-       -webkit-border-radius: 8px;
-}
-.tab {
-       /*display:block;*/
-       /*float:left;*/
-       padding-left: 1em;
-       padding-right: 0.4em;
-       padding-top: 0.4em;
-       padding-bottom: 0.4em;
-       /*margin-right: 1em;*/
-       margin-right: 3px ;
-}
-.tab.active {
-       font-weight: bold;
-       
-}
-#events-tab {
-       display: none;
-}
-
-
-/* footer */
-footer {
-    display: none;
-
-}
-
-.birthday-today, .event-today {
-       font-weight: bold;
-}
-
-.preview {
-       background: #FFFFC8;
-}
-
-#theme-preview {
-       margin: 15px 0 15px 150px;
-}
-
-/* from default */
-#jot-perms-icon, 
-#profile-location,
-#profile-nolocation,
-#profile-youtube, 
-#profile-video, 
-#profile-audio,
-#profile-link,
-#profile-title, 
-#wall-image-upload,
-#wall-file-upload,
-#profile-upload-wrapper,
-#wall-image-upload-div,
-#wall-file-upload-div,
-.hover, .focus {
-       cursor: pointer;
-}
-
-#jot-perms-icon {
-       float: left;
-}
-
-#jot-title, #jot-category {
-       border: 0px;
-       margin: 0px;
-       height: 20px;
-       width: 270px;
-       margin-bottom: 5px;
-       font-weight: bold;
-       border: 1px solid #ffffff;
-}
-
-#jot-title::-webkit-input-placeholder{font-weight: normal;}
-#jot-category::-webkit-input-placeholder{font-weight: normal;}
-#jot-title:-moz-placeholder{font-weight: normal;}
-#jot-category:-moz-placeholder{font-weight: normal;}
-               
-       
-#jot-title:hover,
-#jot-title:focus,
-#jot-category:hover,
-#jot-category:focus {
-       border: 1px solid #cccccc; 
-}
-
-.jothidden { display:none; }
-
-
-.fakelink, .fakelink:visited, .fakelink:link {
-       color: #3465a4;
-       text-decoration: none;
-       cursor: pointer;
-       margin-top: 15px;
-       margin-bottom: 15px;
-}
-.lockview {
-       cursor: pointer;
-}
-
-#group-sidebar {
-       margin-bottom: 10px;
-}
-
-.group-selected, .nets-selected, .fileas-selected, .categories-selected {
-       padding: 3px;
-       -moz-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;     
-       border: 1px solid #CCCCCC;
-       background: #F8F8F8;
-       font-weight: bold;
-}
-
-.settings-widget .selected {
-       padding: 3px;
-       -moz-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;     
-       border: 1px solid #CCCCCC;
-       background: #F8F8F8;
-       font-weight: bold;
-}
-
-.fakelink:hover {
-       color: #3465a4;
-       text-decoration: underline;
-       cursor: pointer;
-}
-.smalltext {
-       font-size: 0.7em;
-}
-#sysmsg {
-       /*width: 600px;*/
-       margin-bottom: 10px;
-}
-
-#register-fill-ext {
-       margin-bottom: 25px;
-}
-
-#label-register-name, #label-register-email, #label-register-nickname, #label-register-openid {
-       float: left;
-       width: 350px;
-       margin-top: 10px;
-}
-
-#register-name, #register-email, #register-nickname {
-       float: left;
-       margin-top: 10px;
-       width: 150px;
-}
-
-#register-openid {
-       float: left;
-       margin-top: 10px;
-       width: 130px;
-}
-
-#register-name-end, #register-email-end, #register-nickname-end, #register-submit-end, #register-openid-end {
-       clear: both;
-}
-
-#register-nickname-desc {
-       margin-top: 30px;
-       width: 650px;
-}
-#register-sitename {
-       float: left;
-       margin-top: 10px;
-}
-
-#register-submit-button {
-       margin-top: 10px;
-}
-
-
-#login_standard {
-       width: 210px;
-       float: left;
-}
-#login_openid {
-       width: 210px;
-       margin-left: 250px;
-}
-
-#login_standard input,
-#login_openid input {
-       width: 180px;
-}
-
-#login-extra-links {
-       clear: both;
-}
-
-#register-link, #lost-password-link {
-       float: left;
-       font-size: 80%;
-       margin-right: 15px;
-}
-
-#login-name-end, #login-password-end, #login-extra-end, #login-submit-end {
-       height: 50px;
-}
-
-#login-submit-button {
-/*     margin-top: 10px; */
-       margin-left: 200px;
-}
-
-
-input#dfrn-url {
-       float: left;
-       background: url(friendika-16.png) no-repeat;
-       background-position: 2px center;
-       font-size: 17px;
-       padding-left: 21px;
-       height: 21px;
-       background-color: #FFFFFF;
-       color: #000000;
-       margin-bottom: 20px;
-}
-
-#dfrn-url-label {
-       float: left;
-       width: 250px;
-}
-
-#dfrn-request-url-end {
-       clear: both;
-}
-
-#knowyouyes, #knowyouno {
-       float: left;
-}
-
-#dfrn-request-knowyou-yes-wrapper, #dfrn-request-knowyou-no-wrapper {
-
-       float: none;
-}
-#dfrn-request-knowyou-yes-label, #dfrn-request-knowyou-no-label {
-       float: left;
-       width: 75px;
-       margin-left: 50px;
-       margin-bottom: 7px;
-}
-#dfrn-request-knowyou-break, #dfrn-request-knowyou-end {
-       clear: both;
-
-}
-
-#dfrn-request-message-wrapper {
-       margin-bottom: 50px;
-}
-#dfrn-request-submit-wrapper {
-       clear: both;
-       margin-left: 50px;
-}
-
-#dfrn-request-info-wrapper {
-       margin-left: 50px;
-}
-
-
-
-#cropimage-wrapper, #cropimage-preview-wrapper {
-       float: left;
-       padding: 10px;
-}
-.imgCrop {
-       max-width: 280px;
-}
-#crop-image-form {
-       margin-top: 30px;
-       clear: both;
-}
-
-.intro-wrapper {
-       margin-top: 20px;
-}
-
-.intro-fullname {
-       font-size: 1.1em;
-       font-weight: bold;
-
-}
-.intro-desc {
-       margin-bottom: 20px;
-       font-weight: bold;
-}
-
-.intro-note {
-       padding: 10px;
-}
-
-.intro-end {
-       padding: 30px;
-}
-
-.intro-form {
-       float: left;
-}
-.intro-approve-form {
-       clear: both;
-}
-.intro-approve-as-friend-end {
-       clear: both;
-}
-.intro-submit-approve, .intro-submit-ignore {
-       margin-right: 20px;
-}
-.intro-submit-approve {
-       margin-top: 15px;
-}
-
-.intro-approve-as-friend-label, .intro-approve-as-fan-label {
-       float: left;
-       width: 100px;
-       margin-left: 20px;
-}
-.intro-approve-as-friend, .intro-approve-as-fan {
-       float: left;
-}
-.intro-form-end {
-       clear: both;
-}
-.intro-approve-as-friend-desc {
-       margin-top: 15px;
-}
-.intro-approve-as-end {
-       clear: both;
-       margin-bottom: 10px;
-}
-
-.intro-end {
-       clear: both;
-       margin-bottom: 30px;
-}
-.aprofile dt {
-       font-weight: bold;
-}
-#page-profile .title {
-       font-weight: bold;
-}
-#profile-vcard-break {
-       clear: both;
-}
-#profile-extra-links {
-       clear: both;
-       margin-top: 10px;
-}
-
-#profile-extra-links ul {
-       list-style-type: none;
-       padding: 0px;
-}
-
-
-#profile-extra-links li {
-       margin-top: 5px;
-}
-
-#profile-edit-links ul {
-       list-style-type: none;
-}
-
-#profile-edit-links li {
-       margin-top: 10px;
-}
-.profile-edit-side-div {
-       float: right;
-}
-.profile-edit-side-link {
-       opacity: 0.3;
-       filter:alpha(opacity=30);
-}
-.profile-edit-side-link:hover {
-       opacity: 1.0;
-       filter:alpha(opacity=100);
-}
-
-.view-contact-wrapper {
-       margin-top: 20px;
-       float: left;
-       margin-left: 20px;
-       width: 180px;
-}
-
-.contact-wrapper {
-       float: left;
-       width: 150px;
-       height: 150px;
-       overflow: auto;
-}
-
-#view-contact-end {
-       clear: both;
-}
-
-
-#viewcontacts {
-       margin-top: 15px;
-}
-#profile-edit-default-desc {
-       color: #FF0000;
-       border: 1px solid #FF8888;
-       background-color: #FFEEEE;
-       padding: 7px;
-}
-
-#profile-edit-clone-link-wrapper {
-       float: left;
-       margin-left: 50px;
-       margin-bottom: 20px;
-       width: 300px;
-}
-
-
-#profile-edit-links-end {
-       clear: both;
-       margin-bottom: 15px;
-}
-
-.profile-listing-photo {
-       border: none;
-}
-
-.profile-edit-submit-wrapper {
-       margin-top: 20px;
-       margin-bottom: 20px;
-}
-
-#profile-photo-link-select-wrapper {
-       margin-top: 2em;
-}
-
-#profile-photo-submit-wrapper {
-       margin-top: 10px;
-}
-
-#profile-photo-wrapper img {
-       width:175px;
-       height:175px;
-       padding: 12px;
-}
-
-#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-sexual-label,
-#profile-edit-politic-label,
-#profile-edit-religion-label,
-#profile-edit-pubkeywords-label,
-#profile-edit-prvkeywords-label,
-#profile-edit-homepage-label,
-#profile-edit-hometown-label {
-       font-weight: 700;
-       float: left;
-       width: 175px;
-}
-
-#profile-edit-profile-name,
-#profile-edit-name,
-#profile-edit-pdesc,
-#gender-select,
-#profile-edit-dob,
-#profile-edit-address,
-#profile-edit-locality,
-#profile-edit-region,
-#profile-edit-postal-code,
-#profile-edit-country-name,
-#marital-select,
-#sexual-select,
-#profile-edit-politic,
-#profile-edit-religion,
-#profile-edit-pubkeywords,
-#profile-edit-prvkeywords,
-#profile-in-dir-yes,
-#profile-in-dir-no,
-#profile-in-netdir-yes,
-#profile-in-netdir-no,
-#hide-wall-yes,
-#hide-wall-no,
-#hide-friends-yes,
-#hide-friends-no {
-       float: left;
-       margin-bottom: 20px;
-       margin-left: 20px;
-}
-#profile-edit-country-name {
-       max-width: 260px;
-}
-#profile-edit-pubkeywords,
-#profile-edit-prvkeywords {
-       margin-bottom: 5px;
-}
-#settings-normal,
-#settings-soapbox,
-#settings-freelove,
-#settings-community {
-       float: left;
-}
-#settings-notifications label {
-       margin-left: 20px;
-}
-#settings-notify-desc, #settings-activity-desc {
-       font-weight: bold;
-       margin-bottom: 15px;
-}
-#settings-pagetype-desc {
-       color: #666666;
-       margin-bottom: 15px;
-}
-
-#profile-in-dir-yes-label,
-#profile-in-dir-no-label,
-#profile-in-netdir-yes-label,
-#profile-in-netdir-no-label,
-#hide-wall-yes-label,
-#hide-wall-no-label,
-#hide-friends-yes-label,
-#hide-friends-no-label {
-       margin-left: 125px;
-       float: left;
-       width: 50px;
-}
-
-
-#profile-edit-howlong-label,
-#profile-edit-with-label {
-       display: block;
-       font-style: italic;
-       width: 175px;
-       margin-left: 0px;
-}
-#profile-edit-howlong,
-#profile-edit-with {
-       margin-left: 20px;
-       margin-bottom: 20px;
-}
-
-#profile-publish-yes-reg,
-#profile-publish-no-reg {
-       float: left;
-       margin-bottom: 10px;
-}
-
-#profile-publish-yes-label-reg,
-#profile-publish-no-label-reg {
-       margin-left: 350px;
-       float: left;
-       width: 50px;
-}
-
-#profile-publish-break-reg,
-#profile-publish-end-reg {
-       clear: both;
-}
-
-
-#profile-edit-pdesc-desc,
-#profile-edit-pubkeywords-desc,
-#profile-edit-prvkeywords-desc  {
-       float: left;
-       color: #777;
-       margin-left: 20px;
-       margin-bottom: 20px;
-}
-#profile-edit-prvkeywords-desc {
-       margin-bottom: 0px;
-}
-
-#profile-edit-homepage, #profile-edit-hometown {
-       float: left;
-       margin-bottom: 25px;
-       margin-left: 20px;
-}
-#profile-edit-hometown {
-       margin-bottom: 5px;
-}
-#settings-normal-label,
-#settings-soapbox-label,
-#settings-community-label,
-#settings-freelove-label {
-       float: left;
-       width: 200px;
-}
-#settings-normal-desc,
-#settings-soapbox-desc,
-#settings-community-desc,
-#settings-freelove-desc {
-       /*float: left;
-       margin-left: 75px;*/
-    clear: left;
-    color: #666666;
-    display: block;
-    margin-bottom: 20px        
-}
-
-#profile-edit-profile-name-end,
-#profile-edit-name-end,
-#profile-edit-pdesc-end,
-#profile-edit-gender-end,
-#profile-edit-dob-end,
-#profile-edit-address-end,
-#profile-edit-locality-end,
-#profile-edit-region-end,
-#profile-edit-postal-code-end,
-#profile-edit-country-name-end,
-#profile-edit-marital-end,
-#profile-edit-sexual-end,
-#profile-edit-politic-end,
-#profile-edit-religion-end,
-#profile-edit-pubkeywords-end,
-#profile-edit-prvkeywords-end,
-#profile-edit-homepage-end,
-#profile-edit-hometown-end,
-#profile-in-dir-break,
-#profile-in-dir-end,
-#profile-in-netdir-break,
-#profile-in-netdir-end,
-#hide-wall-break,
-#hide-wall-end,
-#hide-friends-break,
-#hide-friends-end,
-#settings-normal-break,
-#settings-soapbox-break,
-#settings-community-break,
-#settings-freelove-break {
-       clear: both;
-}
-#profile-edit-marital-wrapper, #profile-edit-address-wrapper {
-       margin-top: 50px;
-}
-#profile-edit-marital-end {
-       margin-bottom: 20px;
-}
-
-.settings-widget ul {
-       list-style-type: none;
-       padding: 0px;
-}
-
-.settings-widget li {
-       margin-left: 24px;
-       margin-bottom: 8px;
-}
-
-
-#gender-select, #marital-select, #sexual-select {
-       width: 220px;
-}
-
-#profile-edit-profile-name-wrapper .required {
-       color: #FF0000;
-       float: left;
-}
-
-#contacts-display-wrapper {
-       padding-left: 35px;
-}
-
-#contacts-main {
-       margin-top: 20px;
-       margin-bottom: 20px;
-}
-
-.contact-entry-wrapper {
-       float: left;
-/*     width: 120px;
-       height: 120px;*/
-       padding-left: 15px;
-       padding-right: 15px; 
-       width: 95px;
-       height: 170px;
-}
-#contacts-search-end {
-       margin-bottom: 10px;
-}
-
-.contact-entry-direction-icon {
-       margin-top: 24px;
-       margin-right: 2px;
-}
-
-.contact-entry-photo img {
-       border: none;
-}
-.contact-entry-photo-end {
-       clear: both;
-}
-.contact-entry-name {
-       float: left;
-       margin-left: 0px;
-       margin-right: 10px;
-       padding-bottom: 5px;
-       width: 120px;
-       font-weight: 600;
-       overflow: hidden;
-}
-.contact-entry-details {
-       font-style: italic;
-       font-size: 10px;
-       font-weight: 500;
-}
-.contact-entry-network {
-       font-size: 10px;
-       font-weight: 500;
-}
-.contact-entry-edit-links {
-       margin-top: 6px;
-       margin-left: 10px;
-       width: 16px;
-}
-.contact-entry-nav-wrapper {
-       float: left;
-       margin-left: 10px;
-}
-
-.contact-entry-edit-links img {
-       border: none;
-       margin-right: 15px;
-}
-.contact-entry-photo {
-       float: left;
-       position: relative;
-}
-.contact-entry-end {
-       clear: both;
-}
-
-#fsuggest-desc, #fsuggest-submit-wrapper {
-       margin-top: 15px;
-       margin-bottom: 15px;
-}
-
-#network-star-link{
-       margin-top: 10px;
-}
-.network-star {
-       float: left;
-       margin-right: 5px;
-}
-#network-bmark-link {
-       margin-top: 10px;
-}
-
-.wall-item-content-wrapper {
-       margin-top: 60px;
-       padding-top: 30px;
-       border-top: 2px solid #AAAAAA;
-       position: relative;
-
-}
-
-.wall-item-content-wrapper.comment {
-       margin-top: 30px;
-       padding-top: 0px;
-       margin-left: 5px;
-       margin-right: 5px;
-       border: 2px solid #AAAAAA;
-       border-radius: 10px;
-       -webkit-border-radius: 10px;
-       -moz-border-radius: 10px;
-/*     background: #EEEEEE;*/
-}
-
-.wall-item-like, .wall-item-dislike {
-       font-style: italic;
-       margin-left: 0px;
-       opacity: 0.6;
-}
-
-.wall-item-like.comment, .wall-item-dislike.comment {
-       margin-left: 5px;
-}
-
-.wall-item-info {
-       display: block;
-       float: left;
-       width:110px;
-       margin-right:10px;
-}
-.comment .wall-item-info {
-       width: 70px;
-}
-
-.wall-item-photo-wrapper {
-       margin-bottom: 10px;
-       width: 100px;
-}
-.wall-item-photo-menu-button {
-       display: block;
-       position: absolute;
-       background-image: url("photo-menu.jpg");
-       background-position: top left; 
-       background-repeat: no-repeat;
-       margin: 0px; padding: 0px;
-       width: 16px;
-       height: 16px;
-       top: 94px; left:0px;
-       overflow: hidden;
-       text-indent: 40px;
-       display: none;
-       
-}
-.wall-item-photo-menu {
-       width: auto;
-       border: 2px solid #444444;
-       background: #FFFFFF;
-       position: absolute;
-       left: 0px; top:110px;
-       display: none;
-       z-index: 10000;
-}
-.wall-item-photo-menu { margin:0px; padding: 0px; list-style: none }
-.wall-item-photo-menu li a { display: block; padding: 2px; }
-.wall-item-photo-menu li a:hover { color: #FFFFFF; background: #3465A4; text-decoration: none; }
-
-
-.comment .wall-item-photo-menu-button {        top: 64px;}
-.comment .wall-item-photo-menu { top: 80px; }
-
-.wallwall .wwto {
-    left: 50px;
-    margin: 0;
-    position: absolute;
-    top: 80px;
-    width: 30px
-}
-.wallwall .wwto img {
-       width: 30px !important;
-       height: 30px !important;
-}
-
-.wallwall /*.wall-item-photo-end*/ {
-       clear: both;
-}
-
-.wall-item-arrowphoto-wrapper {
-    position: absolute;
-    left: 75px;
-    top: 80px;
-    z-index: 100;
-}
-.wall-item-wrapper {
-       margin-left:10px;
-}
-.wall-item-lock {
-       margin-top: 30px;
-       left: 105px;
-       position: absolute;
-       top: 1px;       
-}
-.comment .wall-item-lock {
-       margin-top: 0px;
-       left: 65px;
-}
-
-.wall-item-ago {
-       color: #888888;
-       font-size: 0.8em;
-}
-
-.wall-item-location {
-       overflow: hidden;
-       /* add ellipsis on text overflow               */
-       /* this work on safari, opera, ie, chrome.     */
-       /* firefox users have to wait support or we    */
-       /* can use a jquery plugin http://bit.ly/zJskg */
-       text-overflow: ellipsis;
-       -o-text-overflow: ellipsis;
-       width: 100%;
-}
-
-.wall-item-like-buttons {
-       float: left;
-       margin-right: 3px;
-}
-
-.like-rotator {
-       margin-left: 5px;
-}
-
-.wall-item-like-buttons > a,
-.wall-item-like-buttons > img {
-       float: left;
-}
-
-.wall-item-like-buttons img {
-       cursor: pointer;
-}
-
-.wall-item-share-buttons {
-       margin-left: 10px;
-       margin-right: 10px;
-}
-
-.editpost {
-       margin-left: 10px;
-       float: left;
-}
-.star-item {
-       margin-left: 10px;
-       float: left;    
-}
-.tag-item {
-       margin-left: 10px;
-       float: left;    
-}
-
-.filer-item {
-       margin-left: 10px;
-       float: left;
-}
-
-.wall-item-links-wrapper {
-       float: left;
-}
-
-.wall-item-delete-wrapper {
-       float: right;
-}
-
-/*.wall-item-delete-end {
-       clear: both;
-}*/
-
-.wall-item-delete-icon {
-       border: none;
-}
-
-
-/*.wall-item-wrapper-end {
-       clear: both;
-}*/
-.wall-item-name-link {
-       font-weight: bold;
-       text-decoration: none;
-       color: #3172BD;
-}
-.wall-item-photo {
-       border: none;
-}
-.comment .wall-item-photo {
-       width: 50px !important; 
-       height: 50px !important;
-       border-top-left-radius: 10px;
-}
-.wall-item-content {
-       float: left;
-       margin-left: 3px;
-/*     padding-right: 1em;
-       max-height: 500px;
-       overflow: auto;*/
-}
-
-.wall-item-content img {
-       max-width: 300px;
-       border-radius: 7px;
-       -moz-border-radius: 7px;
-       -webkit-border-radius: 7px;
-}
-
-
-
-.wall-item-title {
-       float: left;
-       font-weight: bold;
-       font-size: 1.6em; 
-       /*width: 450px;*/
-}
-
-/*.wall-item-title-end {
-       clear: both;
-}*/
-
-.wall-item-body {
-       text-align: justify;
-       float: left;
-       width: 300px;
-       overflow: hidden;
-       margin-top: 10px;
-       line-height: 23px;
-}
-
-.wall-item-body code {
-       overflow: hidden;
-}
-
-.comment .wall-item-body {
-       margin-left: 5px;
-       width: 280px;
-}
-
-.wall-item-tools {
-       clear: both;
-/*     background-image: url("head.jpg");
-       background-position: 0 -20px;
-       background-repeat: repeat-x;*/
-       padding: 5px 5px 0px;
-       height: 32px;
-}
-.wall-item-author {
-/*     margin-top: 10px;*/
-       margin-top: 0px;
-}
-
-.comment .wall-item-tools {
-/*     background:none;*/
-/*     background-image: url("head.jpg");
-       background-position: 0 -20px;
-       background-repeat: repeat-x;*/
-       border-bottom-left-radius: 10px;
-       border-bottom-right-radius: 10px;
-} 
-
-.comment-edit-wrapper {
-       margin-top: 15px;
-       background: #f3f3f3;
-       margin-left: 50px;
-}
-
-.comment-wwedit-wrapper {
-       display: block;
-       margin-top: 15px;
-       background: #f3f3f3;
-       margin-left: 10px;
-       margin-right: 10px;
-}
-
-.comment-edit-photo {
-       margin-top: 15px;
-       margin-left: 10px;
-       margin-bottom: 10px;
-       width: 25px;
-       float: left;
-}
-.comment-edit-photo img {
-       width: 25px;
-}
-.comment-edit-text-empty, .comment-edit-text-full {
-/*     float: left;*/
-       -moz-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;     
-       border: 1px solid #cccccc;
-       padding: 3px 1px 1px 3px;
-}
-
-.comment-edit-text-empty {
-       color: gray;
-       height: 30px;
-       width: 175px;
-/*     overflow: auto;*/
-       margin-top: 40px;
-       margin-bottom: 10px;
-       margin-left: 20px;
-}
-
-.comment-edit-text-full {
-       color: black;
-       height: 150px;
-/*     width: 350px;
-       overflow: auto;*/
-       width: 190px;
-       margin-top: 15px;
-       margin-left: 20px;
-}
-
-.comment-edit-text-end {
-       clear: both;
-}
-
-.comment-edit-submit {
-       font-size: 18px;
-       padding: 5px 10px;
-       margin: 10px 0px 10px 110px;
-}
-
-#profile-jot-wrapper {
-       padding-left: 10px;
-}
-
-#profile-jot-plugin-wrapper,
-#profile-jot-submit-wrapper {
-       margin-top: 15px;
-}
-
-#profile-jot-submit {
-       float: left;
-       font-size: 18px;
-       padding: 5px 8px;
-}
-#profile-upload-wrapper {
-       float: left;
-       margin-left: 30px;
-}
-#profile-attach-wrapper {
-       float: left;
-       margin-left: 15px;
-}
-#profile-rotator {
-       float: left;
-       margin-left: 30px;
-}
-#profile-link-wrapper {
-       float: left;
-       margin-left: 15px;
-}
-#profile-youtube-wrapper {
-       float: left;
-       margin-left: 15px;
-}
-#profile-video-wrapper {
-       float: left;
-       margin-left: 15px;
-}
-#profile-audio-wrapper {
-       float: left;
-       margin-left: 15px;
-}
-#profile-location-wrapper {
-       float: left;
-       margin-left: 15px;
-}
-#jot-preview-link {
-       display: none;
-       float: left;
-       margin-left: 45px;
-       margin-top: 0px !important;
-}
-
-
-#profile-nolocation-wrapper {
-       float: left;
-       margin-left: 15px;
-}
-#profile-title-wrapper {
-       float: left;
-       margin-left: 15px;
-}
-
-#profile-jot-perms {
-       float: left;
-       margin-left: 40px;
-       font-weight: bold;
-       font-size: 1.2em;
-}
-
-
-#profile-jot-perms-end {
-       /*clear: left;*/
-       height: 30px;
-}
-
-#profile-jot-plugin-end{
-  clear: both;
-}
-.profile-jot-net {
-       float: left;
-       margin-right: 10px;
-       margin-top: 5px;
-       margin-bottom: 5px;
-}
-
-#profile-jot-networks-end {
-       clear: both;
-}
-
-.profile-jot-box {
-       margin-top: 50px;
-}
-.profile-edit-textarea {
-       margin-left: 20px;
-}
-
-#profile-jot-end {
-       /*clear: both;*/
-       margin-bottom: 30px;
-}
-#about-jot-submit-wrapper {
-       margin-top: 15px;
-}
-#about-jot-end {
-       margin-bottom: 30px;
-}
-#contacts-main {
-       margin-bottom: 30px;
-}
-
-#profile-listing-desc {
-       margin-left: 30px;
-}
-
-#profile-listing-new-link-wrapper {
-       margin-left: 30px;
-       margin-bottom: 30px;
-}
-.profile-listing-photo-wrapper {
-       float: left;
-}
-
-.profile-listing-edit-buttons-wrapper {
-       clear: both;
-}
-.profile-listing-photo-edit-link {
-       float: left;
-       width: 125px;
-}
-.profile-listing-end {
-       clear: both;
-}
-.profile-listing-edit-buttons-wrapper img{
-       border: none;
-       margin-right: 20px;
-}
-.profile-listing {
-       float: left;
-       margin-left: 30px;
-       margin-top: 25px;
-}
-.profile-listing-visible {
-       margin-left: 100px;
-}
-.profile-listing-name {
-       float: left;
-       margin-left: 12px;
-       margin-top: 10px;
-       color: #3172BD;
-       font-weight: bold;
-       width: 200px;
-
-}
-.fortune {
-       margin-top: 50px;
-       color: #4444FF;
-       font-weight: bold;
-       margin-bottom: 20px;
-}
-
-
-.directory-end {
-       clear: both;
-}
-.directory-name {
-       text-align: center;
-}
-.directory-photo {
-       margin-left: 15px;
-}
-.directory-details {
-       font-size: 0.7em;
-       text-align: center;
-       margin-left: 5px;
-       margin-right: 5px;
-}
-.directory-item {
-       float: left;
-/*     width: 225px;
-       height: 260px;*/
-       padding-left: 15px;
-       width: 130px;
-       height: 235px;
-       overflow: auto;
-}
-
-#directory-search-wrapper {
-       margin-top: 20px;
-       margin-right: 20px;
-       margin-bottom: 50px;
-}
-
-#directory-search-end {
-}
-
-.directory-photo-img {
-       width: 125px;
-       border: none;
-}
-
-
-.pager {
-  margin-top: 30px;
-  margin-right: auto;
-  margin-left: auto;
-
-  padding-top: 10px;
-  padding-bottom: 10px;
-  padding-left: 10px;
-  text-align: center;
-/*  line-height: 2.75em;*/
-}
-
-.pager a {
-       font-size: 1.5em;
-       padding: 0.2em 1em;
-       border: 1px solid #aaa;
-       border-radius: 10px;
-       -moz-border-radius: 10px;
-       -webkit-border-radius: 10px;
-}
-
-
-.pager_first,
-.pager_last,
-.pager_prev,
-.pager_next,
-.pager_n {
-/*     float: left;
-       border: 1px solid black;
-       border-radius: 7px;
-       background: #EEE;
-       text-align: center;
-       width: 50px;
-       margin-right: 5px;
-       margin-bottom: 10px;*/
-/*     float: left;*/
-       margin-right: 15px;
-       margin-left: 15px;
-}
-
-.pager_first,
-.pager_last,
-.pager_n {
-       display: none;
-}
-
-.pager_first a,
-.pager_last a,
-.pager_prev a,
-.pager_next a {
-/*     padding-top: 2px;
-       padding-bottom: 2px;
-       padding-left: 4px;
-       padding-right: 8px;*/
-       padding-top: 5px;
-       padding-bottom: 5px;
-       padding-left: 25px;
-       padding-right: 30px;
-
-       border: 2px solid #AAAAAA;
-       border-radius: 10px;
-       -moz-border-radius: 10px;
-       -webkit-border-radius: 10px;
-    font-size: 1.25em;
-       text-align: center;
-       text-decoration: none;
-}
-.pager_n a {
-       padding-top: 2px;
-       padding-bottom: 2px;
-       padding-left: 9px;
-       padding-right: 18px;
-       text-decoration: none;
-}
-
-.pager_current {
-       display: none;
-       float: left;
-       border: 1px solid black;
-       border-radius: 7px;
-       -moz-border-radius: 7px;
-       -webkit-border-radius: 7px;
-       background: #FFCCCC;
-       font-size: 1.25em;
-       text-align: center;
-       width: 50px;
-       margin-right: 5px;
-       margin-bottom: 10px;
-}
-
-
-#advanced-profile-name-wrapper,
-#advanced-profile-gender-wrapper,
-#advanced-profile-dob-wrapper,
-#advanced-profile-age-wrapper,
-#advanced-profile-marital-wrapper,
-#advanced-profile-sexual-wrapper,
-#advanced-profile-homepage-wrapper,
-#advanced-profile-politic-wrapper,
-#advanced-profile-religion-wrapper,
-#advanced-profile-about-wrapper,
-#advanced-profile-interest-wrapper,
-#advanced-profile-contact-wrapper,
-#advanced-profile-music-wrapper,
-#advanced-profile-book-wrapper,
-#advanced-profile-tv-wrapper,
-#advanced-profile-film-wrapper,
-#advanced-profile-romance-wrapper,
-#advanced-profile-work-wrapper,
-#advanced-profile-education-wrapper {
-       margin-top: 20px;
-}
-
-#advanced-profile-name-text,
-#advanced-profile-gender-text,
-#advanced-profile-dob-text,
-#advanced-profile-age-text,
-#advanced-profile-marital-text,
-#advanced-profile-sexual-text,
-#advanced-profile-homepage-text,
-#advanced-profile-politic-text,
-#advanced-profile-religion-text,
-#advanced-profile-about-text,
-#advanced-profile-interest-text,
-#advanced-profile-contact-text,
-#advanced-profile-music-text,
-#advanced-profile-book-text,
-#advanced-profile-tv-text,
-#advanced-profile-film-text,
-#advanced-profile-romance-text,
-#advanced-profile-work-text,
-#advanced-profile-education-text {
-       width: 300px;
-       float: left;
-}
-
-#advanced-profile-name-end,
-#advanced-profile-gender-end,
-#advanced-profile-dob-end,
-#advanced-profile-age-end,
-#advanced-profile-marital-end,
-#advanced-profile-sexual-end,
-#advanced-profile-homepage-end,
-#advanced-profile-politic-end,
-#advanced-profile-religion-end {
-       height: 10px;
-}
-
-#advanced-profile-about-end,
-#advanced-profile-interest-end,
-#advanced-profile-contact-end,
-#advanced-profile-music-end,
-#advanced-profile-book-end,
-#advanced-profile-tv-end,
-#advanced-profile-film-end,
-#advanced-profile-romance-end,
-#advanced-profile-work-end,
-#advanced-profile-education-end {
-
-
-}
-
-#advanced-profile-name,
-#advanced-profile-gender,
-#advanced-profile-dob,
-#advanced-profile-age,
-#advanced-profile-marital,
-#advanced-profile-sexual,
-#advanced-profile-homepage,
-#advanced-profile-politic,
-#advanced-profile-religion {
-       float: left;
-
-}
-
-
-#advanced-profile-about,
-#advanced-profile-interest,
-#advanced-profile-contact,
-#advanced-profile-music,
-#advanced-profile-book,
-#advanced-profile-tv,
-#advanced-profile-film,
-#advanced-profile-romance,
-#advanced-profile-work,
-#advanced-profile-education {
-       margin-top: 10px;
-       margin-left: 50px;
-       margin-right: 20px;
-       padding: 10px;
-       border: 1px solid #CCCCCC;
-}
-
-#advanced-profile-with {
-       float: left;
-       margin-left: 15px;
-}
-
-#contact-edit-wrapper {
-       margin-top: 10px;
-}
-
-#contact-edit-banner-name {
-       font-size: 1.4em;
-       font-weight: bold;
-}
-
-#contact-edit-poll-wrapper {
-       margin-top: 15px;
-}
-
-#contact-edit-last-update-text {
-       float: left;
-       clear: left;
-       margin-top: 30px;
-}
-
-#contact-edit-poll-text {
-       float: left;
-       clear: left;
-       margin-top: 15px;
-       margin-bottom: 0px;
-}
-
-#contact-edit-update-now {
-       margin-top: 15px;
-}
-
-#contact-edit-links{
-       clear: both;
-}
-
-#contact-edit-links ul {
-       list-style: none;
-       list-style-type: none;
-       margin-left: 0px;
-       padding-left: 0px;
-}
-
-#contact-edit-links li {
-       margin-top: 5px;
-}
-
-#contact-edit-drop-link {
-       float: right;
-       margin-right: 10px;
-}
-
-#contact-edit-nav-end {
-       clear: both;
-}
-
-#contact-edit-wrapper {
-       width: 100%;
-}
-
-#update_now_link {
-       float: left;
-       clear: left;
-       margin-bottom: 20px;
-}
-
-#label_id_hidden, #id_hidden {
-       margin-top: 30px;
-}
-#help_id_hidden {
-       margin-top: 30px;
-}
-
-#contact-edit-end {
-       clear: both;
-       margin-top: 15px;
-}
-
-#contact-profile-selector {
-       width: 175px;
-       margin-left: 0px;
-}
-
-.contact-edit-submit {
-       margin-top: 20px;
-       padding: 0.2em 0.5em;
-       font-size: 18px;
-}
-
-
-.contact-photo-menu-button {
-/*     position: absolute;
-       background-image: url("photo-menu.jpg");
-       background-position: top left; 
-       background-repeat: no-repeat;
-       margin: 0px; padding: 0px;
-       width: 16px;
-       height: 16px;
-       top: 64px; left:0px;
-       overflow: hidden;
-       text-indent: 40px;
-       display: none;*/
-       
-}
-.contact-photo-menu {
-       width: 130px;
-       border: 1px solid #AAA;
-       background: #FFFFFF;
-       position: absolute;
-       left: -30px; top: 80px;
-       display: none;
-       z-index: 10000;
-       -moz-box-shadow: 3px 3px 5px #555;
-       -webkit-box-shadow: 3px 3px 5px #555;
-       box-shadow: 3px 3px 5px #555;
-}
-.contact-photo-menu ul { margin:0px; padding: 0px; list-style: none }
-.contact-photo-menu li a { display: block; padding: 2px; }
-.contact-photo-menu li a:hover { color: #FFFFFF; background: #3465A4; text-decoration: none; }
-
-
-#block-message, #ignore-message, #archive-message, #lost-contact-message {
-       color: #FF0000;
-}
-
-#profile-edit-insecure {
-       margin-top: 20px;
-       color: #FF0000;
-       font-size: 1.1em;
-       border: 1px solid #FF8888;
-       background-color: #FFEEEE;
-       padding-left: 5px;
-       /*: 3px 3px 3px 5px; */
-       width: 587px;
-}
-
-#profile-jot-desc {
-       /*float: left;*/
-       width: 100%;
-       color: #FF0000;
-       margin-top: 10px;
-       margin-bottom: 10px;
-}
-
-#profile-jot-text {
-       width: 90%;
-       height: 20px;
-       color:#cccccc;
-       border: 1px solid #cccccc;
-       padding: 3px 0px 0px 5px;
-       -moz-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;     
-}
-
-
-/** acl **/
-#photo-edit-perms-select,
-#photos-upload-permissions-wrapper,
-#profile-jot-acl-wrapper{
-       display:block!important;
-}
-
-#photos-usage-message {
-       margin-bottom: 15px;
-}
-
-#profile-jot-acl-wrapper{
-       width:270px;
-       padding-left:10px;
-       height:auto;
-       overflow:visible;
-}
-
-#acl-wrapper {
-       width: 270px;
-       float:left;
-}
-#acl-search {
-       display: none;
-       float:right;
-       background: #ffffff url("../../../images/search_18.png") no-repeat right center;
-       padding-right:20px;
-}
-#acl-showall {
-       float: left;
-       display: block;
-       width: auto;
-       height: 18px;
-       background-color: #cccccc;
-       background-image: url("../../../images/show_all_off.png");
-       background-position: 7px 7px;
-       background-repeat: no-repeat;
-       padding: 7px 5px 0px 30px;
-       -webkit-border-radius: 5px ;
-       -moz-border-radius: 5px;
-       border-radius: 5px;
-       color: #999999;
-}
-#acl-showall.selected {
-       color: #000000;
-       background-color: #ff9900;
-       background-image: url("../../../images/show_all_on.png");
-}
-
-#acl-list {
-/*     height: 210px;*/
-       border: 1px solid #cccccc;
-       clear: both;
-       margin-top: 30px;
-       overflow: visible;
-}
-#acl-list-content {
-       
-}
-.acl-list-item {
-       display: block;
-       width: 120px;
-       height: 30px;
-       border: 1px solid #cccccc;
-       -moz-border-radius: 4px;
-       -webkit-border-radius: 4px;
-       border-radius: 4px;
-       margin-top: 5px;
-       margin-bottom: 5px;
-       margin-right: 2px;
-       margin-left: 2px;
-       padding-left: 5px;
-       float: left;
-}
-.acl-list-item img{
-       display: none;
-       width:22px;
-       height: 22px;
-       float: left;
-       margin: 4px;
-}
-.acl-list-item p { height: 12px; font-size: 10px; margin: 0px; padding: 2px 0px 1px; overflow: hidden;}
-.acl-list-item a { 
-       font-size: 8px;
-       display: block;
-       width: 40px;
-       height: 10px;
-       float: left;
-       color: #999999;
-       background-color: #cccccc;
-       background-position: 3px 3px;
-       background-repeat: no-repeat;
-       margin-right: 5px;
-       -webkit-border-radius: 2px ;
-       -moz-border-radius: 2px;
-       border-radius: 2px;
-       padding-left: 15px;
-}
-#acl-wrapper a:hover {
-       text-decoration: none;
-       color:#000000;
-}
-.acl-button-show { background-image: url("../../../images/show_off.png"); }
-.acl-button-hide { background-image: url("../../../images/hide_off.png"); }
-
-.acl-button-show.selected {
-       color: #000000;
-       background-color: #9ade00;
-       background-image: url("../../../images/show_on.png");
-}
-.acl-button-hide.selected {
-       color: #000000;
-       background-color: #ff4141;
-       background-image: url("../../../images/hide_on.png");
-}
-.acl-list-item.groupshow { border-color: #9ade00; }
-.acl-list-item.grouphide { border-color: #ff4141; }
-/** /acl **/
-
-
-#group-new-submit-wrapper {
-       margin-top: 30px;
-}
-
-#group-edit-name-label {
-       float: left;
-       width: 175px;
-       margin-top: 20px;
-       margin-bottom: 20px;
-}
-
-#group-edit-name {
-       float: left;
-       width: 225px;
-       margin-top: 20px;
-       margin-bottom: 20px;
-}
-
-#group-edit-name-wrapper {
-
-
-}
-
-
-#group_members_select_label {
-       display: block;
-       float: left;
-       width: 175px;
-}
-
-.group_members_select {
-       float: left;
-       width: 230px;
-       overflow: auto;
-}
-
-#group_members_select_end {
-       clear: both;
-}
-#group-edit-name-end {
-       clear: both;
-}
-
-#prvmail-to-label, #prvmail-subject-label, #prvmail-message-label {
-       margin-bottom: 10px;
-       margin-top: 20px;
-}
-
-#prvmail-submit {
-       float: left;
-       font-size: 18px;
-       padding: 0.25em 0.5em;
-       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;
-}
-
-#prvmail-end {
-       clear: both;
-}
-
-.mail-list-sender,
-.mail-list-detail {
-       float: left;
-}
-.mail-list-detail {
-       margin-left: 20px;
-}
-
-.mail-list-subject {
-       font-size: 1.1em;
-       margin-top: 10px;
-}
-a.mail-list-link {
-    display: block;
-    font-size: 1.3em;
-    padding: 4px 0;
-}
-
-/*
-*a.mail-list-link:hover {
-*      background-color: #15607B;
-*      color: #F5F6FB;
-*}
-*/
-
-.mail-list-outside-wrapper-end {
-       clear: both;
-}
-
-.mail-list-outside-wrapper {
-       margin-top: 30px;
-}
-
-.mail-list-delete-wrapper {
-       float: right;
-       margin-right: 30px;
-       margin-top: 15px;
-}
-
-.mail-list-delete-icon {
-       border: none;
-}
-
-.mail-conv-sender,
-.mail-conv-detail {
-       float: left;
-}
-.mail-conv-detail {
-       margin-left: 20px;
-       margin-bottom: 10px;
-       width: 270px;
-}
-
-.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: 5px;
-       margin-top: 15px;
-}
-.mail-conv-break {
-       clear: both;
-}
-
-.mail-conv-delete-icon {
-       border: none;
-}
-
-.message-links ul {
-       list-style-type: none;
-       padding: 0px;
-}
-
-.message-links li {
-       margin-top: 10px;
-       float: left;
-}
-.message-links a {
-       padding: 3px 5px;
-}
-
-.message-links-end {
-       clear: both;
-}
-
-#sidebar-group-list ul {
-       list-style-type: none;
-}
-
-#sidebar-group-list .icon, #sidebar-group-list .iconspacer {
-       display: inline-block;
-       height: 12px;
-       width: 12px;
-}
-
-#sidebar-group-list li {
-       margin-top: 10px;
-}
-
-.nets-ul, .fileas-ul, .categories-ul {
-       list-style-type: none;
-}
-
-.nets-ul li, .fileas-ul li, .categories-ul li {
-       margin-top: 10px;
-}
-
-.nets-link {
-       margin-left: 24px;
-}
-.nets-all {
-       margin-left: 42px;
-}
-
-.fileas-link, .categories-link {
-       margin-left: 24px;
-}
-
-.fileas-all, .categories-all {
-       margin-left: 0px;
-}
-
-#search-save {
-       margin-left: 5px;
-}
-.groupsideedit {
-       margin-right: 10px;
-}
-#saved-search-ul {
-       list-style-type: none;
-}
-.savedsearchdrop, .savedsearchterm {
-       float: left;
-       margin-top: 10px;
-}
-.savedsearchterm {
-       margin-left: 10px;
-}
-
-
-#side-follow-wrapper {
-       margin-top: 20px;
-}
-#side-follow-url, #side-peoplefind-url {
-       margin-top: 5px;
-}
-#side-follow-submit, #side-peoplefind-submit {
-       margin-top: 15px;
-}
-
-#side-match-link {
-       margin-top: 10px;
-}
-
-aside input[type='text'] {
- width: 174px;
-}
-
-.widget {
-       border: 1px solid #DDDDDD;
-       padding: 8px;
-       margin-top: 5px;
-       -moz-border-radius:5px;
-       -webkit-border-radius:5px;
-       border-radius:5px;
-
-}
-
-
-/*.photos {
-       height: auto;
-       overflow: auto;
-}*/
-
-.photos-end {
-       clear: both;
-       margin-bottom: 25px;
-}
-
-.photo-album-image-wrapper {
-       float: left;
-       margin-top: 15px;
-       margin-right: 15px;
-       margin-left: 15px;
-/*     width: 200px; height: 200px; 
-       overflow: hidden; 
-       position: relative; */
-}
-.photo-album-image-wrapper .caption {
-       display: none; 
-       width: 100%;
-/*     position: absolute; */
-       bottom: 0px; 
-       padding: 0.5em 0.5em 0px 0.5em;
-       background-color: rgba(245, 245, 255, 0.8);
-       border-bottom: 2px solid #CCC;
-       margin: 0px;
-}
-.photo-album-image-wrapper a:hover .caption {
-       display:block;
-}
-
-#photo-album-end {
-       clear: both;
-       margin-bottom: 25px;
-}
-
-.photo-top-image-wrapper {
-/*     position: relative; */
-       float: left;
-       margin-top: 15px;
-       margin-right: 15px;
-       margin-left: 15px;
-       margin-bottom: 15px;
-/*     width: 200px; height: 200px; 
-       overflow: hidden; */
-}
-.photo-top-image-wrapper img {
-       max-width: 290px;
-       border-radius: 10px;
-       -moz-border-radius: 10px;
-       -webkit-border-radius: 10px;
-}
-.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;
-}
-
-#photo-top-links {
-       margin-bottom: 30px;
-       margin-left: 30px;
-}
-
-#photos-upload-newalbum-div {
-       float: left;
-       width: 175px;
-}
-
-#photos-upload-noshare {
-       margin-bottom: 10px;
-}
-#photos-upload-existing-album-text {
-       float: left;
-       width: 175px;
-}
-#photos-upload-newalbum {
-       float: left;
-}
-#photos-upload-album-select {
-       float: left;
-}
-
-#photos-upload-spacer {
-       margin-top: 25px;
-}
-#photos-upload-new-end, #photos-upload-exist-end {
-       clear: both;
-}
-#photos-upload-exist-end {
-       margin-bottom: 15px;
-}
-#photos-upload-submit {
-       margin-top: 15px;
-}
-
-#photos_upload_applet_wrapper {
-       margin-bottom: 15px;
-}
-
-#photos-upload-no-java-message {
-       margin-bottom: 15px;
-}
-
-#character-counter {
-       float: right;
-       font-size: 120%;
-}
-
-#character-counter.grey {
-       color: #888888;
-}
-
-#character-counter.orange {
-       color: orange;
-}
-#character-counter.red {
-       color: red;
-}
-
-#profile-jot-banner-end {
-       /* clear: both; */ 
-}
-
-#photos-upload-select-files-text {
-       margin-top: 15px;
-       margin-bottom: 15px;
-}
-
-#photos-upload-perms-menu, #photos-upload-perms-menu:visited, #photos-upload-perms-menu:link {
-       color: #8888FF;
-       text-decoration: none;
-       cursor: pointer;
-}
-
-#photos-upload-perms-menu {
-       margin-left: 15px;
-}
-
-#photos-upload-perms-menu:hover {
-       color: #0000FF;
-       text-decoration: underline;
-       cursor: pointer;
-}
-#settings-default-perms-menu {
-       margin-top: 15px;
-       margin-bottom: 15px;
-}
-
-#photo-edit-caption-label, #photo-edit-tags-label, #photo-edit-albumname-label, .photo-edit-rotate-label {
-       float: left;
-       width: 150px;
-}
-
-#photo-edit-caption-label, #photo-edit-tags-label, #photo-edit-albumname-label {
-       font-weight: 700;
-}
-
-#photos-upload-noshare-div {
-       margin-top: 140px;
-       margin-bottom: 15px;
-}
-
-#photos-upload-noshare-label {
-       margin-left: 25px;
-}
-
-#photos-upload-noshare {
-       float: left;
-}
-
-.photo-perms-icon {
-       float: left;
-}
-
-#photo-edit-perms-menu, #photos-upload-perms-menu, #settings-default-perms-menu {
-       text-decoration: none;
-}
-
-.photo-jot-perms-text {
-       padding-top: 5px;
-       padding-left: 40px;
-}
-
-#photo-edit-perms, #photos-upload-perms, #settings-default-perms {
-       margin-top: 30px;
-}
-#photos-upload-perms {
-       margin-top: 15px;
-       margin-left: 5px;
-}
-
-#photo-edit-perms-select, #photos-upload-permissions-wrapper, #settings-jot-acl-wrapper {
-       margin-top: 30px;
-       margin-left: 20px;
-}
-
-#advanced-expire-popup {
-       padding-left: 1em;
-       margin-top: 15px;
-       border: 1px solid #aaa;
-       border-radius: 10px;
-       -moz-border-radius: 10px;
-       -webkit-border-radius: 10px;
-}
-
-#photo-edit-perms-end {
-       margin-bottom: 15px;
-}
-
-#photo-edit-caption, #photo-edit-newtag, #photo-edit-albumname {
-       float: left;
-       margin-bottom: 25px;
-}
-
-.photo-edit-rotate {
-       float: left;
-       margin-left: 20px;
-}
-#photo-edit-link-wrap {
-       margin-bottom: 15px;
-}
-#photo-like-div {
-       margin-left: 15px;
-       margin-bottom: 65px;
-}
-
-#photo-edit-caption-end, #photo-edit-tags-end, #photo-edit-albumname-end, #photo-edit-rotate-end {
-       clear: both;
-}
-
-#photo-edit-rotate-end {
-       margin-bottom: 15px;
-}
-
-#photo-edit-submit-button, #photo-edit-delete-button, #photos-upload-submit {
-       margin-top: 30px;
-       padding: 0.25em 0.5em;
-       font-size: 18px;
-}
-#photo-edit-submit-button {
-       margin-left: 10px;
-}
-#photo-edit-delete-button {
-       margin-left: 45px;
-}
-#photos-upload-choose {
-       position: absolute;
-       top: 460px;
-       left: 5px;
-}
-#photos-upload-submit {
-       margin-top: 30px;
-       margin-left: 100px;
-       margin-bottom: 20px;
-}
-.settings-submit, .profile-edit-submit-button {
-       padding: 0.25em 0.5em;
-       margin-bottom: 10px;
-       font-size: 18px;
-}
-#photo-edit-end {
-       margin-bottom: 35px;
-}
-#photo-caption {
-       font-size: 110%;
-       font-weight: bold;
-       margin-top: 15px;
-       margin-bottom: 15px;
-}
-
-#in-this-photo-text {
-       color: #0000FF;
-       margin-left: 30px;
-}
-
-#in-this-photo {
-       margin-left: 60px;
-       margin-top: 10px;
-       margin-bottom: 20px;
-}
-
-#photo-album-edit-submit, #photo-album-edit-drop {
-       margin-top: 15px;
-       margin-bottom: 15px;
-}
-
-#photo-album-edit-drop {
-       margin-left: 200px;
-}
-
-.group-delete-wrapper {
-       float: right;
-       margin-right: 50px;
-}
-
-#install-dbhost-label,
-#install-dbuser-label,
-#install-dbpass-label,
-#install-dbdata-label,
-#install-tz-desc {
-       float: left;
-       width: 250px;
-       margin-top: 10px;
-       margin-bottom: 10px;
-
-}
-
-#install-dbhost,
-#install-dbuser,
-#install-dbpass,
-#install-dbdata {
-       float: left;
-       width: 200px;
-       margin-left: 20px;
-}
-
-#install-dbhost-end,
-#install-dbuser-end,
-#install-dbpass-end,
-#install-dbdata-end,
-#install-tz-end {
-       clear: both;
-}
-
-#install-form select#timezone_select {
-       float: left;
-       margin-top: 18px;
-       margin-left: 20px;
-}
-
-#dfrn-request-networks {
-       margin-bottom: 30px;
-}
-
-#pause {
-  position: fixed;
-  bottom: 5px;
-  right: 5px;
-}
-
-.sparkle {
-       cursor: url('lock.cur'), pointer;
-/*     cursor: pointer !important; */
-}
-
-.contact-block-div {
-       float: left;
-       width: 52px;
-       height: 52px;
-}
-.contact-block-textdiv {
-       float: left;
-       width: 150px;
-       height: 34px;
-}
-
-#contact-block-end {
-       clear: both;
-}
-.contact-block-link {
-       float: left;
-}
-.contact-block-img {
-       width:48px;
-       height:48px;
-}
-
-#tag-remove {
-       margin-bottom: 15px;
-}
-
-#tagrm li {
-       margin-bottom: 10px;
-}
-
-#tagrm-submit, #tagrm-cancel {
-       margin-top: 25px;
-}
-
-#tagrm-cancel {
-       margin-left: 15px;
-}
-
-.wall-item-conv {
-       margin-top: 5px;
-       margin-bottom: 25px;
-}
-
-#search-submit {
-       margin-left: 15px;
-}
-
-#search-box {
-       margin-bottom: 25px;
-}
-
-.location-label, .gender-label, .marital-label, .homepage-label {
-       float: left;
-       text-align: right;
-       display: block;
-       width: 65px;
-}
-
-.adr, .x-gender, .marital-text, .homepage-url {
-       float: left;
-       display: block;
-       margin-left: 8px;
-}
-
-.profile-clear {
-       clear: both;
-}
-
-
-.clear {
-       clear: both;
-}
-
-.cc-license {
-       margin-top: 50px;
-       font-size: 70%;
-}
-
-
-#plugin-settings-link, #account-settings-link {
-       margin-bottom: 10px;
-}
-
-#uexport-link {
-       margin-bottom: 20px;
-}
-
-/* end from default */
-       
-
-.fn {
-       padding: 0px 0px 5px 12px;
-       font-size: 120%;
-       font-weight: bold;
-}
-
-.vcard .title {
-       margin-bottom: 5px;
-       margin-left: 12px;
-}
-
-.vcard dl {
-       clear: both;
-}
-
-#birthday-title {
-       float: left;
-       font-weight: bold;      
-}
-
-#birthday-adjust {
-       float: left;
-       font-size: 75%;
-       margin-left: 10px;
-}
-
-#birthday-title-end {
-       clear: both;
-}
-
-.birthday-list {
-       margin-left: 15px;
-}
-
-#birthday-wrapper {
-       margin-bottom: 20px;
-}
-
-#network-new-link {
-       margin-top: 15px;
-       margin-bottom: 15px;
-}
-
-
-.tool-wrapper {
-  float: left;
-  margin-left: 15px;
-}
-
-.tool-link {
-  cursor: pointer;
-}
-
-.eventcal {
-       float: left;
-       font-size: 20px;
-}
-
-#event-summary-text {
-       margin-top: 15px;
-}
-
-#event-share-checkbox {
-       float: left;
-       margin-top: 10px;
-}
-
-#event-share-text {
-       float: left;
-       margin-top: 10px;
-       margin-left: 5px;
-}
-
-#event-share-break {
-       clear: both;
-       margin-bottom: 10px;
-}
-
-#event-summary {
-       width: 400px;
-}
-
-.vevent {
-       border: 1px solid #CCCCCC;
-}
-
-.vevent .event-summary {
-       margin-left: 10px;
-       margin-right: 10px;
-       font-weight: bold;
-}
-
-.vevent .event-description, .vevent .event-location {
-       margin-left: 10px;
-       margin-right: 10px;
-}
-.vevent .event-start {
-       margin-left: 10px;
-       margin-right: 10px;
-}
-
-#new-event-link {
-       margin-bottom: 10px;
-}
-
-.edit-event-link, .plink-event-link {
-       float: left;
-       margin-top: 4px;
-       margin-right: 4px;
-       margin-bottom: 15px;
-}
-
-.event-description:before {
-       content: url('../../../images/calendar.png');
-       margin-right: 15px;
-}
-
-.event-start, .event-end {
-       margin-left: 10px;
-       width: 330px;
-       clear: both;
-}
-
-.event-start .dtstart, .event-end .dtend {
-       float: right;
-}
-
-.event-list-date {
-       margin-bottom: 10px;
-}
-
-.prevcal, .nextcal {
-       float: left;
-       margin-left: 32px;
-       margin-right: 32px;
-       margin-top: 64px;
-}
-.event-calendar-end {
-       clear: both;
-}
-
-.calendar {
-       font-family: Courier, monospace;
-}
-.today {
-       font-weight: bold;
-       color: #FF0000;
-}
-
-.settings-block {
-       border: 1px solid #AAA;
-       margin: 10px;
-       padding: 10px;
-}
-
-.app-title {
-       margin: 10px;
-}
-
-#identity-manage-desc {
-       margin-top:15px;
-       margin-bottom: 15px;
-}
-
-#identity-manage-choose {
-       margin-bottom: 15px;
-}
-
-#identity-submit {
-       margin-top: 20px;
-}
-
-#photo-nav {
-       position: relative;
-       height: 55px;
-}
-
-#photo-prev-link {
-       position: absolute;
-       left: 5px;
-}
-#photo-next-link {
-       position: absolute;
-       right: 5px;
-}
-#photo-prev-link, #photo-next-link {
-       padding: 10px;
-/*     float: left;*/
-}
-
-/*#photo-photo {
-       float: left;
-}*/
-
-#photo-photo img {
-       max-width: 310px;
-}
-
-#photo-photo-end {
-       clear: both;
-}
-
-.profile-match-photo {
-       float: left;
-       text-align: center;
-       width: 120px;
-}
-
-.profile-match-name {
-       float: left;
-       text-align: center;
-       width: 120px;
-       overflow: hidden;
-}
-
-.profile-match-break,
-.profile-match-end {
-       clear: both;
-}
-
-.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;
-}
-.side-link {
-       margin-bottom: 15px;
-}
-
-#language-selector {
-       position: absolute;
-       top: 0px;
-       left: 16px;
-}
-
-#group-members {
-       margin-top: 20px;
-       padding: 10px;
-       height: 250px;
-       overflow: auto;
-       border: 1px solid #ddd;
-}
-
-#group-members-end {
-       clear: both;
-}
-
-#group-separator {
-       margin-top: 10px;
-       margin-bottom: 10px;
-}
-
-#group-all-contacts {
-       padding: 10px;
-       height: 450px;
-       overflow: auto;
-       border: 1px solid #ddd;
-}
-
-#group-all-contacts-end {
-       clear: both;
-       margin-bottom: 10px;
-}
-
-#group-edit-desc {
-       margin-top: 15px;
-}
-
-
-#prof-members {
-       margin-top: 20px;
-       padding: 10px;
-       height: 250px;
-       overflow: auto;
-       border: 1px solid #ddd;
-}
-
-#prof-members-end {
-       clear: both;
-}
-
-#prof-separator {
-       margin-top: 10px;
-       margin-bottom: 10px;
-}
-
-#prof-all-contacts {
-       padding: 10px;
-       height: 450px;
-       overflow: auto;
-       border: 1px solid #ddd;
-}
-
-#prof-all-contacts-end {
-       clear: both;
-       margin-bottom: 10px;
-}
-
-#prof-edit-desc {
-       margin-top: 15px;
-}
-
-#crepair-name-label,
-#crepair-nick-label,
-#crepair-attag-label,
-#crepair-url-label,
-#crepair-request-label,
-#crepair-confirm-label,
-#crepair-notify-label,
-#crepair-photo-label,
-#crepair-poll-label {
-       float: left;
-       width: 200px;
-       margin-bottom: 15px;
-}
-
-#crepair-name,
-#crepair-nick,
-#crepair-attag,
-#crepair-url,
-#crepair-request,
-#crepair-confirm,
-#crepair-notify,
-#crepair-photo,
-#crepair-poll {
-       float: left;
-       width: 300px;
-}
-
-
-#netsearch-box {
-       margin-top: 20px;       
-}
-
-#netsearch-box #search-submit {
-       margin: 5px 0px 0px 0px;
-}
-
-.required {
-       color: #FF0000;
-}
-
-#event-start-text, #event-finish-text {
-       margin-top: 10px;
-       margin-bottom: 5px;
-}
-
-#event-nofinish-checkbox, #event-nofinish-text, #event-adjust-checkbox, #event-adjust-text {
-       float: left;
-}
-#event-datetime-break {
-       margin-bottom: 10px;
-}
-
-#event-nofinish-break, #event-adjust-break {
-       clear: both;
-}
-
-#event-desc-text, #event-location-text {
-       margin-top: 10px;
-       margin-bottom: 5px;
-}
-#event-submit {
-       margin-top: 10px;
-}
-
-.body-tag, .filesavetags, .categorytags {
-       opacity: 0.5;
-       filter:alpha(opacity=50);
-}
-
-.body-tag:hover, .filesavetags:hover, .categorytags:hover {
-       opacity: 1.0 !important;
-       filter:alpha(opacity=100) !important;
-}
-
-.item-select {
-       display: none;
-       opacity: 0.1;
-       filter:alpha(opacity=10);
-       float: right;
-       margin-right: 10px;
-
-}
-.item-select:hover, .checkeditem {
-       opacity: 1;
-       filter:alpha(opacity=100);
-}
-
-
-#item-delete-selected {
-       margin-top: 30px;
-}
-
-#item-delete-selected-end {
-       clear: both;
-}
-#item-delete-selected-icon, #item-delete-selected-desc {
-       float: left;
-       margin-right: 5px;
-}
-#item-delete-selected-desc:hover {
-       text-decoration: underline;
-}
-
-#lang-select-icon {
-       cursor: pointer;
-       position: fixed;
-       left: 0px;
-       top: 0px;
-       opacity: 0.2;
-       filter:alpha(opacity=20);
-}
-
-#lang-select-icon:hover {
-       opacity: 1;
-       filter:alpha(opacity=100);
-}
-
-.notif-image {
-       height: 80px;
-       width: 80px;
-       margin-right: 15px;
-}
-.notification-listing-end {
-       clear: both;
-       margin-bottom: 15px;
-}
-
-
-
-/**
- * Plugins settings
- */
-
-.settings-block > h3,
-.settings-heading {
-       border-bottom: 1px solid #babdb6;
-}
-
-/**
- * Form fields
- */
-.field {
-       margin-bottom: 10px;
-       padding-bottom: 10px;
-       overflow: auto;
-       width: 100%
-}
-
-.field label {
-       font-weight: 700;
-       float: left;
-       width: 200px;
-}
-
-.field input,
-.field textarea {
-       width: 270px;
-       margin-left: 20px;
-}
-.field textarea { height: 100px; }
-.field_help {
-       display: block;
-       margin-left: 20px;
-       color: #666666;
-       
-}
-
-
-.field .onoff {
-       float: left;
-       width: 80px;
-}
-.field .onoff a {
-       display: block;
-       border:1px solid #666666;
-       background-image:url("../../../images/onoff.jpg");
-       background-repeat: no-repeat;
-       padding: 4px 2px 2px 2px;
-       height: 16px;
-       text-decoration: none;
-}
-.field .onoff .off {
-       border-color:#666666;
-       padding-left: 40px;
-       background-position: left center;
-       background-color: #cccccc;
-       color: #666666;
-       text-align: right;
-}
-.field .onoff .on {
-       border-color:#204A87;
-       padding-right: 40px;
-       background-position: right center;
-       background-color: #D7E3F1;
-       color: #204A87;
-       text-align: left;
-}
-.hidden { display: none!important; }
-
-.field.radio .field_help { clear: left; margin-left: 20px; }
-
-/**
- * ADMIN
- */
-#pending-update {
-       float:right;
-       color: #ffffff;
-       font-weight: bold;
-       background-color: #FF0000;
-       padding: 0em 0.3em;
-       
-}
-#adminpage dl {
-       clear: left;
-       min-height: 40px;
-       margin-bottom: 2px;
-       padding-bottom: 2px;
-       border-bottom: 1px solid black;
-}
-#adminpage dt {
-       width: 180px;
-       float: left;
-       font-weight: bold;
-}
-#adminpage dd {
-       margin-left: 180px;
-}
-
-#adminpage h3 {
-       border-bottom: 1px solid #cccccc;
-}
-#adminpage .field label {
-       font-weight: bold;
-}
-#adminpage .submit {
-       clear:left;
-       text-align: right;
-}
-
-#adminpage #pluginslist {
-       margin: 0px; padding: 0px;
-}
-#adminpage .plugin {
-       list-style: none;
-       display: block;
-       border: 1px solid #888888;
-       padding: 1em;
-       margin-bottom: 5px;
-       clear: left;
-}
-#adminpage .plugin .desc { margin-left: 2.5em;}
-#adminpage .toggleplugin {
-       float:left;
-       margin-right: 1em;
-}
-
-#adminpage table {width:100%; border-bottom: 1px solid #000000; margin: 5px 0px;}
-#adminpage table th { text-align: left;}
-#adminpage td .icon { float: left;}
-#adminpage table#users img { width: 16px; height: 16px; }
-#adminpage table tr:hover { background-color: #bbc7d7; }
-#adminpage .selectall { text-align: right; }
-
-#cnftheme {
-       display: none;
-}
-
-/*
- * UPDATE
- */
-.popup {       
-       width: 100%; height: 100%;
-       top:0px; left:0px;
-       position: absolute;
-       display: none;
-}
-
-.popup .background {
-       background-color: rgba(0,0,0,128);
-       opacity: 0.5;
-       width: 100%; height: 100%;
-       position: absolute;
-       top:0px; left:0px;
-}
-.popup .panel {
-       top:25%;left:25%;width:50%;height:50%;
-       padding: 1em;
-       position: absolute;
-       border: 4px solid #000000;
-       background-color: #FFFFFF;
-}
-.popup .panel .panel_text { display: block; overflow: auto; height: 80%; } 
-.popup .panel .panel_in { width: 100%; height: 100%;   position: relative; }
-.popup .panel .panel_actions {  width: 100%; bottom: 4px; left: 0px; position: absolute; }
-.panel_text .progress { width: 50%; overflow: hidden; height: auto; border: 1px solid #cccccc; margin-bottom: 5px}
-.panel_text .progress span {float: right; display: block; width: 25%; background-color: #eeeeee; text-align: right;}
-
-/**
- * OAuth
- */
-.oauthapp {
-       height: auto; overflow: auto;
-       border-bottom: 2px solid #cccccc;
-       padding-bottom: 1em;
-       margin-bottom: 1em;     
-}
-.oauthapp img {
-       float: left;
-       width: 48px; height: 48px;
-       margin: 10px;
-}
-.oauthapp img.noicon {
-       background-image: url("../../../images/icons/48/plugin.png");
-       background-position: center center;
-       background-repeat: no-repeat;
-}
-.oauthapp a {
-       float: left;
-}
-
-/**
- * ICONS
- */
-.iconspacer {
-       display: block; width: 16px; height: 16px;
-}
-
-.icon {
-       display: block; width: 16px; height: 16px;
-       background-image: url('../../../images/icons.png');
-}
-.article { background-position: 0px 0px;}
-.icon.audio { display: none; background-position: -16px 0px;}
-.block { background-position: -32px 0px;}
-/*.drop { background-position: -48px 0px;}
-.drophide { background-position: -64px 0px;}*/
-.icon.drop {
-       display: block; width: 28px; height: 28px;
-       background-size: 100% 100%;
-       background-image: url('images/drop-darkred.png');
-       background-repeat: no-repeat;
-}
-.icon.drophide {
-       display: block; width: 28px; height: 28px;
-       background-size: 100% 100%;
-       background-image: url('images/drop-darkred.png');
-       background-repeat: no-repeat;
-}
-.edit { background-position: -80px 0px;}
-/*.camera { background-position: -96px 0px;}*/
-.icon.camera {
-       display: block; width: 28px; height: 21px;
-       margin-top: 4px;
-       background-size: 100% 100%;
-       background-image: url('images/camera.png');
-       background-repeat: no-repeat;
-}
-/*.dislike { background-position: -112px 0px;}*/
-.icon.dislike {
-       display: block;
-       width: 26px; height: 28px;/*31 33*/
-       background-size: 100% 100%;
-       background-image: url('images/disapprove.png');
-       background-repeat: no-repeat;
-       opacity: 0.5;
-}
-/*.like { background-position: -128px 0px;}*/
-.icon.like {
-       display: block; width: 26px; height: 28px;/*31 33*/
-       margin-right: 7px;
-       background-size: 100% 100%;
-       background-image: url('images/approve.png');
-       background-repeat: no-repeat;
-       opacity: 0.5;
-}
-.link { display: none; background-position: -144px 0px;}
-
-/*.globe { background-position: 0px -16px;}*/
-.icon.globe {
-       display: block; width: 28px; height: 28px;
-       background-size: 100% 100%;
-       background-image: url('images/globe.png');
-       background-repeat: no-repeat;
-}
-.noglobe { background-position: -16px -16px;}
-.no { background-position: -32px -16px;}
-.pause { background-position: -48px -16px;}
-.play { background-position: -64px -16px;}
-/*.pencil { background-position: -80px -16px;}
-.small-pencil { background-position: -96px -16px;}*/
-.icon.pencil {
-       display: block; width: 28px; height: 28px;
-       background-size: 100% 100%;
-       background-image: url('images/pencil.png');
-       background-repeat: no-repeat;
-       opacity: 0.5;
-}
-.icon.small-pencil {
-       display: block; width: 28px; height: 28px;
-       background-size: 100% 100%;
-       background-image: url('images/pencil.png');
-       background-repeat: no-repeat;
-       opacity: 0.5;
-}
-/*.recycle { background-position: -112px -16px;}*/
-.icon.recycle {
-       display: block;
-       width: 28px; height: 27px;/*33 32*/
-       background-size: 100% 100%;
-       background-image: url('images/recycle.png');
-       background-repeat: no-repeat;
-       opacity: 0.5;
-}
-/*.remote-link { background-position: -128px -16px;}*/
-.icon.remote-link {
-/*     display: block;*/
-       display: none;
-       width: 28px; height: 28px;
-       background-size: 100% 100%;
-       background-image: url('images/remote-link.png');
-       background-repeat: no-repeat;
-       opacity: 0.5;
-}
-.share { background-position: -144px -16px;}
-
-.tools { background-position: 0px -32px;}
-/*.lock { background-position: -16px -32px;}*/
-.icon.lock {
-       display: block; width: 17px; height: 25px;
-       margin-top: 1px;
-       background-size: 100% 100%;
-       background-image: url('images/lock.png');
-       background-repeat: no-repeat;
-}
-/*.unlock { background-position: -32px -32px;}*/
-.icon.unlock {
-       display: block; width: 17px; height: 28px;
-       margin-top: -2px;
-       background-size: 100% 100%;
-       background-image: url('images/unlock.png');
-       background-repeat: no-repeat;
-}
-.icon.video { display: none; background-position: -48px -32px;}
-.oembed.video a { display: block; }
-.youtube { background-position: -64px -32px;}
-/*.attach { background-position: -80px -32px; }*/
-.icon.attach {
-       display: block; width: 28px; height: 28px;
-       background-size: 100% 100%;
-       background-image: url('images/paperclip.png');
-       background-repeat: no-repeat;
-}
-.language { background-position: -96px -32px; }
-.prev { background-position: -112px -32px; }
-.next { background-position: -128px -32px; }
-.on { background-position: -144px -32px; }
-
-.off { background-position: 0px -48px; }
-/*.starred { background-position: -16px -48px; }*/
-.icon.starred {
-       display: block; width: 28px; height: 28px;
-       background-size: 100% 100%;
-       background-image: url('images/star-yellow.png');
-       background-repeat: no-repeat;
-}
-/*.unstarred { background-position: -32px -48px; }*/
-.icon.unstarred {
-       display: block; width: 28px; height: 28px;
-       background-size: 100% 100%;
-       background-image: url('images/star.png');
-       background-repeat: no-repeat;
-       opacity: 0.5;
-}
-/*.tagged { background-position: -48px -48px; }*/
-.icon.tagged {
-       display: block; width: 28px; height: 28px;
-       background-size: 100% 100%;
-       background-image: url('images/tag.png');
-       background-repeat: no-repeat;
-       opacity: 0.5;
-}
-.yellow { background-position: -64px -48px; }
-
-
-.filer-icon {
-       display: block; width: 24px; height: 24px;
-       background-size: 100% 100%;
-       background-image: url('images/folder.png');
-       background-repeat: no-repeat;
-       opacity: 0.5;
-}
-
-.icon.dim { opacity: 0.3;filter:alpha(opacity=30); }
-
-[class^="comment-edit-bb"] {
-       list-style: none;
-       display: none;
-       margin: 0px 0 -5px 20px;
-       width: 75%;
-}
-[class^="comment-edit-bb"] > li {
-       display: inline-block;
-       margin: 20px 10px 0 0;
-       visibility: none;
-}
-/*[class^="comment-edit-bb-end"] {
-       clear: both;
-}*/
-.editicon {
-    display: inline-block;
-       background-size: 100% 100%;
-       background-repeat: no-repeat;
-       background-color: #f3f3f3;
-    text-decoration: none;
-}
-/*.editicon:hover {
-       background-color: #ccc;
-}*/
-.boldbb {
-/*     background-position: 0px 0px;*/
-       width: 26px; height: 28px;
-       background-image: url('images/boldB-serif.png');
-}
-/*.boldbb:hover {
-       background-position: 0px -16px;
-}*/
-.italicbb {
-/*     background-position: -16px 0px;*/
-       width: 16px; height: 28px;
-       background-image: url('images/italicI-serif.png');
-}
-/*.italicbb:hover {
-       background-position: -16px -16px;
-}*/
-.underlinebb {
-/*     background-position: -32px 0px;*/
-       width: 25px; height: 28px;
-       background-image: url('images/underlineU-serif.png');
-}
-/*.underlinebb:hover {
-       background-position: -32px -16px;
-}*/
-.quotebb {
-/*     background-position: -48px 0px;*/
-       width: 28px; height: 28px;
-       background-image: url('images/quote.png');
-}
-/*.quotebb:hover {
-       background-position: -48px -16px;
-}*/
-.codebb {
-/*     background-position: -64px 0px;*/
-       width: 28px; height: 28px;
-       background-image: url('images/code.png');
-}
-/*.codebb:hover {
-       background-position: -64px -16px;
-}*/
-.imagebb {
-       background-position: -80px 0px;
-}
-.imagebb:hover {
-       background-position: -80px -16px;
-}
-.urlbb {
-       background-position: -96px 0px;
-}
-.urlbb:hover {
-       background-position: -96px -16px;
-}
-.videobb {
-       background-position: -112px 0px;
-}
-.videobb:hover {
-       background-position: -112px -16px;
-}
-
-.attachtype {
-       display: block; width: 20px; height: 23px;
-       float: left;
-       background-image: url('../../../images/content-types.png');
-}
-
-.body-attach {
-       margin-top: 10px;
-}
-
-.type-video { background-position: 0px 0px; }
-.type-image { background-position: -20px 0px; }
-.type-audio { background-position: -40px 0px; }
-.type-text  { background-position: -60px 0px; }
-.type-unkn  { background-position: -80px 0px; }
-
-
-/* autocomplete popup */
-.acpopup {
-       max-height:150px;
-       background-color:#ffffff;
-       overflow:auto;
-       z-index:100000;
-       border:1px solid #cccccc;
-}
-.acpopupitem {
-       background-color:#ffffff; padding: 4px;
-       clear:left;
-}
-.acpopupitem img {
-       float: left;
-       margin-right: 4px;
-}
-
-.acpopupitem.selected {
-       color: #FFFFFF; background: #3465A4;
-}
-
-/* popup notifications */
-div.jGrowl div.notice {
-  background: #511919 url("../../../images/icons/48/notice.png") no-repeat 5px center;
-  color: #ffffff;
-  padding-left: 58px;
-}
-div.jGrowl div.info {
-  background: #364e59 url("../../../images/icons/48/info.png") no-repeat 5px center;
-  color: #ffffff;
-  padding-left: 58px;
-}
-#jGrowl.top-right {
-       top: 15px;
-       right: 15px;
-}
-.qcomment {
-       border: 1px solid #EEE;
-       padding: 3px;
-       margin-top: 15px;
-       margin-left: 25px;
-       width: 125px;
-       overflow-y: auto;
-}
-
-
-.qcomment option {
-       width: 125px;
-       overflow-x: hidden;
-}
-
-.qcomment {
-       opacity: 0.3;
-       filter:alpha(opacity=30);
-}
-.qcomment:hover {
-       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.notifications-menu-popup {
-       position: absolute;
-       display: none;
-       width: 10em;
-       margin: 0px;
-       padding: 0px;
-       list-style: none;
-       z-index: 100000;
-       right: -55px;
-}
-#nav-notifications-menu {
-       width: 300px;
-/*     max-height: 400px;*/
-       height: auto;
-       overflow-y: scroll;overflow-style:scrollbar;
-       background-color:#FFFFFF;
-       -moz-border-radius: 5px;
-       -webkit-border-radius: 5px;
-       border-radius:5px;
-       border: 1px solid #AAA;
-       -moz-box-shadow: 3px 3px 5px #555;
-       -webkit-box-shadow: 3px 3px 5px #555;
-       box-shadow: 3px 3px 5px #555;
-}
-#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;
-}
-
-#id_term_label {
-       width:75px;
-}
-#id_term {
-       width:100px;
-}
-
-#recip {
-       
-}
-.autocomplete-w1 { background: #ffffff; no-repeat bottom right; position:absolute; top:0px; left:0px; margin:6px 0 0 6px; /* IE6 fix: */ _background:none; _margin:1px 0 0 0; }
-.autocomplete { color:#000; border:1px solid #999; background:#FFF; cursor:default; text-align:left; max-height:350px; overflow:auto; margin:-6px 6px 6px -6px; /* IE6 specific: */ _height:350px;  _margin:0; _overflow-x:hidden; }
-.autocomplete .selected { background:#F0F0F0; }
-.autocomplete div { padding:2px 5px; white-space:nowrap; overflow:hidden; }
-
-#datebrowse-sidebar select {
-       margin-left: 40px;
-       width: 130px;
-}
+/**\r
+ * duepuntozero Frindika style\r
+ * Fabio Comuni <fabrix.xm@gmail.com>\r
+ *\r
+ * Heavily modified for Frost Mobile\r
+ * Zach P\r
+ */\r
+\r
+\r
+/* generals */\r
+html {\r
+/*     width: 320px;*/\r
+       margin-left: auto;\r
+       margin-right: auto;\r
+       overflow-x:hidden;\r
+}\r
+\r
+body {\r
+       font-family: helvetica,arial,freesans,clean,sans-serif;\r
+       font-size: 16px;\r
+/*     line-height: 24px;*/\r
+       background-color: #ffffff;\r
+       background-image: url(head.jpg);\r
+       background-repeat: repeat-x;\r
+       color: #505050;\r
+       margin: 0px;\r
+       overflow-x:hidden;\r
+}\r
+\r
+div.container {\r
+       display: block;\r
+/*     width: 100%;*/\r
+       margin-top: 0px;\r
+       margin-bottom: 0px;\r
+       margin-left: auto;\r
+       margin-right: auto;\r
+       overflow-x:hidden;\r
+}\r
+\r
+a, a:visited, a:link { color: #3465a4; text-decoration: none; }\r
+a:hover {text-decoration: underline; }\r
+\r
+input {\r
+       border: 1px solid #666666;\r
+/*     -moz-border-radius: 3px;*/\r
+       -webkit-border-radius: 3px;\r
+       border-radius: 3px;     \r
+       padding: 3px;\r
+}\r
+\r
+img { border :0px; }\r
+\r
+#id_openid_url, .openid input {\r
+   background: url(login-bg.gif) no-repeat;\r
+   background-position: 0 50%;\r
+   padding-left: 18px;\r
+   width: 252px;\r
+   margin-left: 20px;\r
+}\r
+.openid:hover {\r
+\r
+}\r
+\r
+/*#id_openid_url {\r
+       width: 384px;\r
+}*/\r
+\r
+code {\r
+       font-family: Courier, monospace;\r
+       white-space: pre;\r
+       display: block;\r
+       overflow: auto;\r
+       border: 1px solid #444;\r
+       background: #EEE;\r
+       color: #444;\r
+       padding: 10px;\r
+       margin-top: 20px; \r
+}\r
+\r
+blockquote {\r
+       background-color: #f4f8f9;\r
+       border-left: 4px solid #dae4ee;\r
+       padding: 0.4em;\r
+       margin-left: 20px;\r
+       margin-right: 0px;\r
+       width: 260px;\r
+       overflow: hidden;\r
+}\r
+\r
+.icollapse-wrapper, .ccollapse-wrapper {\r
+       border: 1px solid #CCC;\r
+       padding: 5px;\r
+}\r
+\r
+.hide-comments-outer {\r
+       margin-left: 0px;\r
+       font-weight: 700;\r
+       opacity: 0.6;\r
+}\r
+.hide-comments {\r
+       margin-left: 5px;\r
+}\r
+\r
+#panel {\r
+       background-color: ivory;\r
+       position: absolute;\r
+       z-index: 2;\r
+       width: 30%;\r
+       padding: 25px;\r
+       border: 1px solid #444;\r
+}\r
+\r
+.heart {\r
+       color: #FF0000;\r
+       font-size: 100%;\r
+       margin-right: 5px;\r
+}\r
+\r
+\r
+\r
+/* nav */\r
+nav {\r
+       height: 94px;\r
+/*     width: 100%;*/\r
+       width: 320px;\r
+       display: block;\r
+       margin-top: 0px;\r
+       margin-bottom: 0px;\r
+       margin-left: auto;\r
+       margin-right: auto;\r
+}\r
+nav #site-location {\r
+       color: #888a85;\r
+       font-size: 0.8em;\r
+       position: absolute;\r
+}\r
+\r
+.error-message {\r
+       color: #FF0000;\r
+       font-size: 1.1em;\r
+       border: 1px solid #FF8888;\r
+       background-color: #FFEEEE;\r
+       padding: 10px;\r
+}\r
+\r
+.info-message {\r
+       color: #204a87;\r
+       font-size: 1.1em;\r
+       border: 1px solid #3465a4;\r
+       background-color: #d7e3f1;\r
+       padding: 10px;\r
+}\r
+\r
+\r
+nav #banner {\r
+/*     display: block;*/\r
+       display: none;\r
+       margin-top: 14px;\r
+       position: absolute;\r
+}\r
+nav #banner #logo-text a {\r
+       display: none;\r
+       font-size: 40px;\r
+       font-weight: bold;\r
+       margin-left: 3px;\r
+       color: #000000;\r
+\r
+}\r
+nav #banner #logo-text a:hover { text-decoration: none; }\r
+\r
+\r
+/* ZP REMOVE? nav-commlink */\r
+.nav-commlink, .nav-login-link {\r
+       display: block;\r
+       height: 15px;\r
+       margin-top: 67px;\r
+       margin-right: 2px;\r
+       /*padding: 6px 10px;*/\r
+       padding: 6px 3px;\r
+       float: left;\r
+       bottom: 140px;\r
+       border: 1px solid #babdb6;\r
+       border-bottom: 0px;\r
+       background-color: #aec0d3;\r
+       color: #565854;         \r
+/*     -moz-border-radius: 3px 3px 0px 0px;*/\r
+       -webkit-border-radius: 3px 3px 0px 0px;\r
+       border-radius: 3px 3px 0px 0px; \r
+}\r
+\r
+.nav-commlink.selected {\r
+       background-color: #ffffff;\r
+       border-bottom: 1px solid #ffffff;\r
+       color: #000000 !important;\r
+       margin-top: 64px;\r
+       padding-top: 6px;\r
+       padding-bottom: 8px;\r
+}\r
+\r
+.nav-ajax-left.show {\r
+       position: absolute;\r
+       font-size: 0.8em;\r
+       top: 22px;\r
+       right: 2px;\r
+       padding: 1px 2px;\r
+       border-radius: 4px;\r
+/*     -moz-border-radius: 4px;*/\r
+       -webkit-border-radius: 4px;\r
+       background-color: gold !important;\r
+}\r
+\r
+\r
+\r
+nav #nav-link-wrapper .nav-link {\r
+       /*border-right: 1px solid #babdb6;*/\r
+}\r
+\r
+nav .nav-link {\r
+       margin-top: 24px;\r
+       margin-bottom: 0.2em;\r
+       margin-right: 1em;\r
+       margin-left: 1em;\r
+       background-color: transparent !important;\r
+}\r
+\r
+.nav-button-container {\r
+       float: right;\r
+       position: relative;\r
+}\r
+\r
+.nav-button-container .nav-ajax-left {\r
+}\r
+\r
+.nav-menu-list {\r
+       text-align: center;\r
+       text-size: 18px;\r
+       line-height: 24px;\r
+\r
+       border-left: 1px solid #aaa;/*#444444;*/\r
+       border-right: 1px solid #aaa;\r
+       border-top: 1px solid #aaa;\r
+       border-bottom: 1px solid #aaa;\r
+\r
+       background: #FFFFFF;\r
+\r
+       display: none;\r
+       list-style: none;\r
+\r
+       width: 8em;\r
+       position: absolute;\r
+       margin: 0px;\r
+/*     right: -33px;*/\r
+       padding: 1em 0px;\r
+\r
+/*     -moz-box-shadow: 3px 3px 5px #555;*/\r
+       -webkit-box-shadow: 3px 3px 5px #555;\r
+       box-shadow: 3px 3px 5px #555;\r
+\r
+       z-index: 10000;\r
+}\r
+\r
+#network-menu-list {\r
+       left: 3px;\r
+}\r
+\r
+#contacts-menu-list {\r
+       right: -30px;\r
+}\r
+\r
+#system-menu-list {\r
+       right: 3px;\r
+}\r
+\r
+\r
+div.main-container {\r
+/*     width: 100%;*/\r
+       margin: 0px auto;\r
+       display: block;\r
+       position: relative;\r
+}\r
+\r
+/*div.main-content-loading {\r
+       position: absolute;\r
+       top: 200px;\r
+       left: 50%;\r
+       display: none;\r
+}*/\r
+\r
+\r
+/* aside */\r
+aside {\r
+/*     display: block;*/\r
+       display: none;\r
+       min-height: 112px;\r
+\r
+       width: 250px;\r
+\r
+       padding: 1em;\r
+       margin: 1em 0px 0px 0px;\r
+\r
+       position: absolute;\r
+\r
+/*     float:left;*/\r
+}\r
+\r
+#dfrn-request-link {\r
+       display: block;\r
+       color: #FFFFFF;\r
+       -webkit-border-radius: 5px ;\r
+/*     -moz-border-radius: 5px;*/\r
+       border-radius: 5px;\r
+       padding: 5px;\r
+       font-weight: bold;\r
+       background: #3465a4 url('friendika-16.png') no-repeat 95% center;\r
+}\r
+#wallmessage-link {\r
+       display: block;\r
+       color: #FFFFFF;\r
+       -webkit-border-radius: 5px ;\r
+/*     -moz-border-radius: 5px;*/\r
+       border-radius: 5px;\r
+       padding: 5px;\r
+       font-weight: bold;\r
+       background-color: #3465a4;\r
+}\r
+\r
+/* section */\r
+div.section-wrapper {\r
+/*     width: 100%;*/\r
+/*     width: 320px;\r
+\r
+       margin-left: auto;\r
+       margin-right: auto;*/\r
+       margin-left: 0px;\r
+\r
+       /*padding-right:2em;*/\r
+\r
+       display: block;\r
+\r
+       background-color: #ffffff;\r
+       background-image: url(border.jpg);\r
+       background-position: top right;\r
+       background-repeat: no-repeat;\r
+}\r
+\r
+section {\r
+       margin: 0px 0px 0px 0px;\r
+\r
+       padding-left: 5px;\r
+       padding-right: 5px;\r
+       padding-top: 1em;\r
+       padding-bottom: 3em;\r
+\r
+       background-image: url(border.jpg);\r
+       background-position: top left;\r
+       background-repeat: no-repeat;\r
+\r
+       min-height: 112px;\r
+       border-top: 1px solid #babdb6;  \r
+       overflow-x:hidden;\r
+}\r
+\r
+.tabs {\r
+       /*background-image: url(head.jpg);\r
+       background-repeat: repeat-x;    \r
+       background-position: 0px -20px;*/\r
+       border-bottom: 1px solid #babdb6;\r
+       padding:0px;\r
+}\r
+.tabs li { margin: 0px 0px 20px 0px; padding-left: 1em; list-style: none; }\r
+.tabs a {\r
+       padding: 0.4em 2em;\r
+       border: 1px solid #aaa;\r
+       border-radius: 8px;\r
+/*     -moz-border-radius: 8px;*/\r
+       -webkit-border-radius: 8px;\r
+}\r
+.tab {\r
+       /*display:block;*/\r
+       /*float:left;*/\r
+       padding-left: 1em;\r
+       padding-right: 0.4em;\r
+       padding-top: 0.4em;\r
+       padding-bottom: 0.4em;\r
+       /*margin-right: 1em;*/\r
+       margin-right: 3px ;\r
+}\r
+.tab.active {\r
+       font-weight: bold;\r
+       \r
+}\r
+#events-tab {\r
+       display: none;\r
+}\r
+\r
+\r
+/* footer */\r
+footer {\r
+    display: none;\r
+\r
+}\r
+\r
+.birthday-today, .event-today {\r
+       font-weight: bold;\r
+}\r
+\r
+.preview {\r
+       background: #FFFFC8;\r
+}\r
+\r
+#theme-preview {\r
+       margin: 15px 0 15px 150px;\r
+}\r
+\r
+/* from default */\r
+#jot-perms-icon, \r
+#profile-location,\r
+#profile-nolocation,\r
+#profile-youtube, \r
+#profile-video, \r
+#profile-audio,\r
+#profile-link,\r
+#profile-title, \r
+#wall-image-upload,\r
+#wall-file-upload,\r
+#profile-upload-wrapper,\r
+#wall-image-upload-div,\r
+#wall-file-upload-div,\r
+.hover, .focus {\r
+       cursor: pointer;\r
+}\r
+\r
+#jot-perms-icon {\r
+       float: left;\r
+}\r
+\r
+#jot-title, #jot-category {\r
+       border: 0px;\r
+       margin: 0px;\r
+       height: 20px;\r
+       width: 270px;\r
+       margin-bottom: 5px;\r
+       font-weight: bold;\r
+       border: 1px solid #ffffff;\r
+}\r
+\r
+#jot-title::-webkit-input-placeholder{font-weight: normal;}\r
+#jot-category::-webkit-input-placeholder{font-weight: normal;}\r
+/*#jot-title:-moz-placeholder{font-weight: normal;}\r
+#jot-category:-moz-placeholder{font-weight: normal;}*/\r
+               \r
+       \r
+#jot-title:hover,\r
+#jot-title:focus,\r
+#jot-category:hover,\r
+#jot-category:focus {\r
+       border: 1px solid #cccccc; \r
+}\r
+\r
+.jothidden { display:none; }\r
+\r
+\r
+.fakelink, .fakelink:visited, .fakelink:link {\r
+       color: #3465a4;\r
+       text-decoration: none;\r
+       cursor: pointer;\r
+       margin-top: 15px;\r
+       margin-bottom: 15px;\r
+}\r
+.lockview {\r
+       cursor: pointer;\r
+}\r
+\r
+#group-sidebar {\r
+       margin-bottom: 10px;\r
+}\r
+\r
+.group-selected, .nets-selected, .fileas-selected, .categories-selected {\r
+       padding: 3px;\r
+/*     -moz-border-radius: 3px;*/\r
+       -webkit-border-radius: 3px;\r
+       border-radius: 3px;     \r
+       border: 1px solid #CCCCCC;\r
+       background: #F8F8F8;\r
+       font-weight: bold;\r
+}\r
+\r
+.settings-widget .selected {\r
+       padding: 3px;\r
+/*     -moz-border-radius: 3px;*/\r
+       -webkit-border-radius: 3px;\r
+       border-radius: 3px;     \r
+       border: 1px solid #CCCCCC;\r
+       background: #F8F8F8;\r
+       font-weight: bold;\r
+}\r
+\r
+.fakelink:hover {\r
+       color: #3465a4;\r
+       text-decoration: underline;\r
+       cursor: pointer;\r
+}\r
+.smalltext {\r
+       font-size: 0.7em;\r
+}\r
+#sysmsg {\r
+       /*width: 600px;*/\r
+       margin-bottom: 10px;\r
+}\r
+\r
+#register-fill-ext {\r
+       margin-bottom: 25px;\r
+}\r
+\r
+#label-register-name, #label-register-email, #label-register-nickname, #label-register-openid {\r
+       float: left;\r
+       width: 350px;\r
+       margin-top: 10px;\r
+}\r
+\r
+#register-name, #register-email, #register-nickname {\r
+       float: left;\r
+       margin-top: 10px;\r
+       width: 150px;\r
+}\r
+\r
+#register-openid {\r
+       float: left;\r
+       margin-top: 10px;\r
+       width: 130px;\r
+}\r
+\r
+#register-name-end, #register-email-end, #register-nickname-end, #register-submit-end, #register-openid-end {\r
+       clear: both;\r
+}\r
+\r
+#register-nickname-desc {\r
+       margin-top: 30px;\r
+       width: 650px;\r
+}\r
+#register-sitename {\r
+       float: left;\r
+       margin-top: 10px;\r
+}\r
+\r
+#register-submit-button {\r
+       margin-top: 10px;\r
+}\r
+\r
+/*\r
+#login_standard {\r
+       width: 210px;\r
+       float: left;\r
+}\r
+#login_openid {\r
+       width: 210px;\r
+       margin-left: 250px;\r
+}\r
+\r
+#login_standard input,\r
+#login_openid input {\r
+       width: 180px;\r
+}\r
+\r
+#login-extra-links {\r
+       clear: both;\r
+}\r
+\r
+#register-link, #lost-password-link {\r
+       float: left;\r
+       font-size: 80%;\r
+       margin-right: 15px;\r
+}\r
+\r
+#login-name-end, #login-password-end, #login-extra-end, #login-submit-end {\r
+       height: 50px;\r
+}\r
+\r
+#login-submit-button {\r
+       margin-top: 10px; \r
+       margin-left: 200px;\r
+}*/\r
+\r
+\r
+input#dfrn-url {\r
+       float: left;\r
+       background: url(friendika-16.png) no-repeat;\r
+       background-position: 2px center;\r
+       font-size: 17px;\r
+       padding-left: 21px;\r
+       height: 21px;\r
+       background-color: #FFFFFF;\r
+       color: #000000;\r
+       margin-bottom: 20px;\r
+}\r
+\r
+#dfrn-url-label {\r
+       float: left;\r
+       width: 250px;\r
+}\r
+\r
+#dfrn-request-url-end {\r
+       clear: both;\r
+}\r
+\r
+#knowyouyes, #knowyouno {\r
+       float: left;\r
+}\r
+\r
+#dfrn-request-knowyou-yes-wrapper, #dfrn-request-knowyou-no-wrapper {\r
+\r
+       float: none;\r
+}\r
+#dfrn-request-knowyou-yes-label, #dfrn-request-knowyou-no-label {\r
+       float: left;\r
+       width: 75px;\r
+       margin-left: 50px;\r
+       margin-bottom: 7px;\r
+}\r
+#dfrn-request-knowyou-break, #dfrn-request-knowyou-end {\r
+       clear: both;\r
+\r
+}\r
+\r
+#dfrn-request-message-wrapper {\r
+       margin-bottom: 50px;\r
+}\r
+#dfrn-request-submit-wrapper {\r
+       clear: both;\r
+       margin-left: 50px;\r
+}\r
+\r
+#dfrn-request-info-wrapper {\r
+       margin-left: 50px;\r
+}\r
+\r
+\r
+\r
+#cropimage-wrapper, #cropimage-preview-wrapper {\r
+       float: left;\r
+       padding: 10px;\r
+}\r
+.imgCrop {\r
+       max-width: 280px;\r
+}\r
+#crop-image-form {\r
+       margin-top: 30px;\r
+       clear: both;\r
+}\r
+\r
+.intro-wrapper {\r
+       margin-top: 20px;\r
+}\r
+\r
+.intro-fullname {\r
+       font-size: 1.1em;\r
+       font-weight: bold;\r
+\r
+}\r
+.intro-desc {\r
+       margin-bottom: 20px;\r
+       font-weight: bold;\r
+}\r
+\r
+.intro-note {\r
+       padding: 10px;\r
+}\r
+\r
+.intro-end {\r
+       padding: 30px;\r
+}\r
+\r
+.intro-form {\r
+       float: left;\r
+}\r
+.intro-approve-form {\r
+       clear: both;\r
+}\r
+.intro-approve-as-friend-end {\r
+       clear: both;\r
+}\r
+.intro-submit-approve, .intro-submit-ignore {\r
+       margin-right: 20px;\r
+}\r
+.intro-submit-approve {\r
+       margin-top: 15px;\r
+}\r
+\r
+.intro-approve-as-friend-label, .intro-approve-as-fan-label {\r
+       float: left;\r
+       width: 100px;\r
+       margin-left: 20px;\r
+}\r
+.intro-approve-as-friend, .intro-approve-as-fan {\r
+       float: left;\r
+}\r
+.intro-form-end {\r
+       clear: both;\r
+}\r
+.intro-approve-as-friend-desc {\r
+       margin-top: 15px;\r
+}\r
+.intro-approve-as-end {\r
+       clear: both;\r
+       margin-bottom: 10px;\r
+}\r
+\r
+.intro-end {\r
+       clear: both;\r
+       margin-bottom: 30px;\r
+}\r
+.aprofile dt {\r
+       font-weight: bold;\r
+}\r
+#page-profile .title {\r
+       font-weight: bold;\r
+}\r
+#profile-vcard-break {\r
+       clear: both;\r
+}\r
+#profile-extra-links {\r
+       clear: both;\r
+       margin-top: 10px;\r
+}\r
+\r
+#profile-extra-links ul {\r
+       list-style-type: none;\r
+       padding: 0px;\r
+}\r
+\r
+\r
+#profile-extra-links li {\r
+       margin-top: 5px;\r
+}\r
+\r
+#profile-edit-links ul {\r
+       list-style-type: none;\r
+}\r
+\r
+#profile-edit-links li {\r
+       margin-top: 10px;\r
+}\r
+.profile-edit-side-div {\r
+       float: right;\r
+}\r
+.profile-edit-side-link {\r
+       opacity: 0.3;\r
+       filter:alpha(opacity=30);\r
+}\r
+.profile-edit-side-link:hover {\r
+       opacity: 1.0;\r
+       filter:alpha(opacity=100);\r
+}\r
+\r
+.view-contact-wrapper {\r
+       margin-top: 20px;\r
+       float: left;\r
+       margin-left: 20px;\r
+       width: 180px;\r
+}\r
+\r
+.contact-wrapper {\r
+       float: left;\r
+       width: 150px;\r
+       height: 150px;\r
+       overflow: auto;\r
+}\r
+\r
+#view-contact-end {\r
+       clear: both;\r
+}\r
+\r
+\r
+#viewcontacts {\r
+       margin-top: 15px;\r
+}\r
+#profile-edit-default-desc {\r
+       color: #FF0000;\r
+       border: 1px solid #FF8888;\r
+       background-color: #FFEEEE;\r
+       padding: 7px;\r
+}\r
+\r
+#profile-edit-clone-link-wrapper {\r
+       float: left;\r
+       margin-left: 50px;\r
+       margin-bottom: 20px;\r
+       width: 300px;\r
+}\r
+\r
+\r
+#profile-edit-links-end {\r
+       clear: both;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+.profile-listing-photo {\r
+       border: none;\r
+}\r
+\r
+.profile-edit-submit-wrapper {\r
+       margin-top: 20px;\r
+       margin-bottom: 20px;\r
+}\r
+\r
+#profile-photo-link-select-wrapper {\r
+       margin-top: 2em;\r
+}\r
+\r
+#profile-photo-submit-wrapper {\r
+       margin-top: 10px;\r
+}\r
+\r
+#profile-photo-wrapper img {\r
+       width:175px;\r
+       height:175px;\r
+       padding: 12px;\r
+}\r
+\r
+#profile-edit-profile-name-label,\r
+#profile-edit-name-label,\r
+#profile-edit-pdesc-label,\r
+#profile-edit-gender-label,\r
+#profile-edit-dob-label,\r
+#profile-edit-address-label,\r
+#profile-edit-locality-label,\r
+#profile-edit-region-label,\r
+#profile-edit-postal-code-label,\r
+#profile-edit-country-name-label,\r
+#profile-edit-marital-label,\r
+#profile-edit-sexual-label,\r
+#profile-edit-politic-label,\r
+#profile-edit-religion-label,\r
+#profile-edit-pubkeywords-label,\r
+#profile-edit-prvkeywords-label,\r
+#profile-edit-homepage-label,\r
+#profile-edit-hometown-label {\r
+       font-weight: 700;\r
+       float: left;\r
+       width: 175px;\r
+}\r
+\r
+#profile-edit-profile-name,\r
+#profile-edit-name,\r
+#profile-edit-pdesc,\r
+#gender-select,\r
+#profile-edit-dob,\r
+#profile-edit-address,\r
+#profile-edit-locality,\r
+#profile-edit-region,\r
+#profile-edit-postal-code,\r
+#profile-edit-country-name,\r
+#marital-select,\r
+#sexual-select,\r
+#profile-edit-politic,\r
+#profile-edit-religion,\r
+#profile-edit-pubkeywords,\r
+#profile-edit-prvkeywords,\r
+#profile-in-dir-yes,\r
+#profile-in-dir-no,\r
+#profile-in-netdir-yes,\r
+#profile-in-netdir-no,\r
+#hide-wall-yes,\r
+#hide-wall-no,\r
+#hide-friends-yes,\r
+#hide-friends-no {\r
+       float: left;\r
+       margin-bottom: 20px;\r
+       margin-left: 20px;\r
+}\r
+#profile-edit-country-name {\r
+       max-width: 260px;\r
+}\r
+#profile-edit-pubkeywords,\r
+#profile-edit-prvkeywords {\r
+       margin-bottom: 5px;\r
+}\r
+#settings-normal,\r
+#settings-soapbox,\r
+#settings-freelove,\r
+#settings-community {\r
+       float: left;\r
+}\r
+#settings-notifications label {\r
+       margin-left: 20px;\r
+}\r
+#settings-notify-desc, #settings-activity-desc {\r
+       font-weight: bold;\r
+       margin-bottom: 15px;\r
+}\r
+#settings-pagetype-desc {\r
+       color: #666666;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#profile-in-dir-yes-label,\r
+#profile-in-dir-no-label,\r
+#profile-in-netdir-yes-label,\r
+#profile-in-netdir-no-label,\r
+#hide-wall-yes-label,\r
+#hide-wall-no-label,\r
+#hide-friends-yes-label,\r
+#hide-friends-no-label {\r
+       margin-left: 125px;\r
+       float: left;\r
+       width: 50px;\r
+}\r
+\r
+\r
+#profile-edit-howlong-label,\r
+#profile-edit-with-label {\r
+       display: block;\r
+       font-style: italic;\r
+       width: 175px;\r
+       margin-left: 0px;\r
+}\r
+#profile-edit-howlong,\r
+#profile-edit-with {\r
+       margin-left: 20px;\r
+       margin-bottom: 20px;\r
+}\r
+\r
+#profile-publish-yes-reg,\r
+#profile-publish-no-reg {\r
+       float: left;\r
+       margin-bottom: 10px;\r
+}\r
+\r
+#profile-publish-yes-label-reg,\r
+#profile-publish-no-label-reg {\r
+       margin-left: 350px;\r
+       float: left;\r
+       width: 50px;\r
+}\r
+\r
+#profile-publish-break-reg,\r
+#profile-publish-end-reg {\r
+       clear: both;\r
+}\r
+\r
+\r
+#profile-edit-pdesc-desc,\r
+#profile-edit-pubkeywords-desc,\r
+#profile-edit-prvkeywords-desc  {\r
+       float: left;\r
+       color: #777;\r
+       margin-left: 20px;\r
+       margin-bottom: 20px;\r
+}\r
+#profile-edit-prvkeywords-desc {\r
+       margin-bottom: 0px;\r
+}\r
+\r
+#profile-edit-homepage, #profile-edit-hometown {\r
+       float: left;\r
+       margin-bottom: 25px;\r
+       margin-left: 20px;\r
+}\r
+#profile-edit-hometown {\r
+       margin-bottom: 5px;\r
+}\r
+#settings-normal-label,\r
+#settings-soapbox-label,\r
+#settings-community-label,\r
+#settings-freelove-label {\r
+       float: left;\r
+       width: 200px;\r
+}\r
+#settings-normal-desc,\r
+#settings-soapbox-desc,\r
+#settings-community-desc,\r
+#settings-freelove-desc {\r
+       /*float: left;\r
+       margin-left: 75px;*/\r
+    clear: left;\r
+    color: #666666;\r
+    display: block;\r
+    margin-bottom: 20px        \r
+}\r
+\r
+#profile-edit-profile-name-end,\r
+#profile-edit-name-end,\r
+#profile-edit-pdesc-end,\r
+#profile-edit-gender-end,\r
+#profile-edit-dob-end,\r
+#profile-edit-address-end,\r
+#profile-edit-locality-end,\r
+#profile-edit-region-end,\r
+#profile-edit-postal-code-end,\r
+#profile-edit-country-name-end,\r
+#profile-edit-marital-end,\r
+#profile-edit-sexual-end,\r
+#profile-edit-politic-end,\r
+#profile-edit-religion-end,\r
+#profile-edit-pubkeywords-end,\r
+#profile-edit-prvkeywords-end,\r
+#profile-edit-homepage-end,\r
+#profile-edit-hometown-end,\r
+#profile-in-dir-break,\r
+#profile-in-dir-end,\r
+#profile-in-netdir-break,\r
+#profile-in-netdir-end,\r
+#hide-wall-break,\r
+#hide-wall-end,\r
+#hide-friends-break,\r
+#hide-friends-end,\r
+#settings-normal-break,\r
+#settings-soapbox-break,\r
+#settings-community-break,\r
+#settings-freelove-break {\r
+       clear: both;\r
+}\r
+#profile-edit-marital-wrapper, #profile-edit-address-wrapper {\r
+       margin-top: 50px;\r
+}\r
+#profile-edit-marital-end {\r
+       margin-bottom: 20px;\r
+}\r
+\r
+.settings-widget ul {\r
+       list-style-type: none;\r
+       padding: 0px;\r
+}\r
+\r
+.settings-widget li {\r
+       margin-left: 24px;\r
+       margin-bottom: 8px;\r
+}\r
+\r
+\r
+#gender-select, #marital-select, #sexual-select {\r
+       width: 220px;\r
+}\r
+\r
+#profile-edit-profile-name-wrapper .required {\r
+       color: #FF0000;\r
+       float: left;\r
+}\r
+\r
+#contacts-display-wrapper {\r
+       padding-left: 35px;\r
+}\r
+\r
+#contacts-main {\r
+       margin-top: 20px;\r
+       margin-bottom: 20px;\r
+}\r
+\r
+.contact-entry-wrapper {\r
+       float: left;\r
+/*     width: 120px;\r
+       height: 120px;*/\r
+       padding-left: 15px;\r
+       padding-right: 15px; \r
+       width: 95px;\r
+       height: 170px;\r
+}\r
+#contacts-search-end {\r
+       margin-bottom: 10px;\r
+}\r
+\r
+.contact-entry-direction-icon {\r
+       margin-top: 24px;\r
+       margin-right: 2px;\r
+}\r
+\r
+.contact-entry-photo img {\r
+       border: none;\r
+}\r
+.contact-entry-photo-end {\r
+       clear: both;\r
+}\r
+.contact-entry-name {\r
+       float: left;\r
+       margin-left: 0px;\r
+       margin-right: 10px;\r
+       padding-bottom: 5px;\r
+       width: 120px;\r
+       font-weight: 600;\r
+       overflow: hidden;\r
+}\r
+.contact-entry-details {\r
+       font-style: italic;\r
+       font-size: 10px;\r
+       font-weight: 500;\r
+}\r
+.contact-entry-network {\r
+       font-size: 10px;\r
+       font-weight: 500;\r
+}\r
+.contact-entry-edit-links {\r
+       margin-top: 6px;\r
+       margin-left: 10px;\r
+       width: 16px;\r
+}\r
+.contact-entry-nav-wrapper {\r
+       float: left;\r
+       margin-left: 10px;\r
+}\r
+\r
+.contact-entry-edit-links img {\r
+       border: none;\r
+       margin-right: 15px;\r
+}\r
+.contact-entry-photo {\r
+       float: left;\r
+       position: relative;\r
+}\r
+.contact-entry-end {\r
+       clear: both;\r
+}\r
+\r
+#fsuggest-desc, #fsuggest-submit-wrapper {\r
+       margin-top: 15px;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#network-star-link{\r
+       margin-top: 10px;\r
+}\r
+.network-star {\r
+       float: left;\r
+       margin-right: 5px;\r
+}\r
+#network-bmark-link {\r
+       margin-top: 10px;\r
+}\r
+\r
+.wall-item-content-wrapper {\r
+       margin-top: 60px;\r
+       padding-top: 30px;\r
+       border-top: 2px solid #AAAAAA;\r
+       position: relative;\r
+\r
+}\r
+\r
+.wall-item-content-wrapper.comment {\r
+       margin-top: 30px;\r
+       padding-top: 0px;\r
+       margin-left: 5px;\r
+       margin-right: 5px;\r
+       border: 2px solid #AAAAAA;\r
+       border-radius: 10px;\r
+       -webkit-border-radius: 10px;\r
+/*     -moz-border-radius: 10px;*/\r
+/*     background: #EEEEEE;*/\r
+}\r
+\r
+.wall-item-like, .wall-item-dislike {\r
+       font-style: italic;\r
+       margin-left: 0px;\r
+       opacity: 0.6;\r
+}\r
+\r
+.wall-item-like.comment, .wall-item-dislike.comment {\r
+       margin-left: 5px;\r
+}\r
+\r
+.wall-item-info {\r
+       display: block;\r
+       float: left;\r
+       width:110px;\r
+       margin-right:10px;\r
+}\r
+.comment .wall-item-info {\r
+       width: 70px;\r
+}\r
+\r
+.wall-item-photo-wrapper {\r
+       margin-bottom: 10px;\r
+       width: 100px;\r
+}\r
+.wall-item-photo-menu-button {\r
+       display: block;\r
+       position: absolute;\r
+       background-image: url("photo-menu.jpg");\r
+       background-position: top left; \r
+       background-repeat: no-repeat;\r
+       margin: 0px; padding: 0px;\r
+       width: 16px;\r
+       height: 16px;\r
+       top: 94px; left:0px;\r
+       overflow: hidden;\r
+       text-indent: 40px;\r
+       display: none;\r
+       \r
+}\r
+.wall-item-photo-menu {\r
+       width: auto;\r
+       border: 2px solid #444444;\r
+       background: #FFFFFF;\r
+       position: absolute;\r
+       left: 0px; top:110px;\r
+       display: none;\r
+       z-index: 10000;\r
+}\r
+.wall-item-photo-menu { margin:0px; padding: 0px; list-style: none }\r
+.wall-item-photo-menu li a { display: block; padding: 2px; }\r
+.wall-item-photo-menu li a:hover { color: #FFFFFF; background: #3465A4; text-decoration: none; }\r
+\r
+\r
+.comment .wall-item-photo-menu-button {        top: 64px;}\r
+.comment .wall-item-photo-menu { top: 80px; }\r
+\r
+.wallwall .wwto {\r
+    left: 50px;\r
+    margin: 0;\r
+    position: absolute;\r
+    top: 80px;\r
+    width: 30px\r
+}\r
+.wallwall .wwto img {\r
+       width: 30px !important;\r
+       height: 30px !important;\r
+}\r
+\r
+.wallwall /*.wall-item-photo-end*/ {\r
+       clear: both;\r
+}\r
+\r
+.wall-item-arrowphoto-wrapper {\r
+    position: absolute;\r
+    left: 75px;\r
+    top: 80px;\r
+    z-index: 100;\r
+}\r
+.wall-item-wrapper {\r
+       margin-left:10px;\r
+}\r
+.wall-item-lock {\r
+       margin-top: 30px;\r
+       left: 105px;\r
+       position: absolute;\r
+       top: 1px;       \r
+}\r
+.comment .wall-item-lock {\r
+       margin-top: 0px;\r
+       left: 65px;\r
+}\r
+\r
+.wall-item-ago {\r
+       color: #888888;\r
+       font-size: 0.8em;\r
+}\r
+\r
+.wall-item-location {\r
+       overflow: hidden;\r
+       /* add ellipsis on text overflow               */\r
+       /* this work on safari, opera, ie, chrome.     */\r
+       /* firefox users have to wait support or we    */\r
+       /* can use a jquery plugin http://bit.ly/zJskg */\r
+       text-overflow: ellipsis;\r
+       -o-text-overflow: ellipsis;\r
+       width: 100%;\r
+}\r
+\r
+.wall-item-like-buttons {\r
+       float: left;\r
+       margin-right: 3px;\r
+}\r
+\r
+.like-rotator {\r
+       margin-left: 5px;\r
+}\r
+\r
+.wall-item-like-buttons > a,\r
+.wall-item-like-buttons > img {\r
+       float: left;\r
+}\r
+\r
+.wall-item-like-buttons img {\r
+       cursor: pointer;\r
+}\r
+\r
+.wall-item-share-buttons {\r
+       margin-left: 10px;\r
+       margin-right: 10px;\r
+}\r
+\r
+.editpost {\r
+       margin-left: 10px;\r
+       float: left;\r
+}\r
+.star-item {\r
+       margin-left: 10px;\r
+       float: left;    \r
+}\r
+.tag-item {\r
+       margin-left: 10px;\r
+       float: left;    \r
+}\r
+\r
+.filer-item {\r
+       margin-left: 10px;\r
+       float: left;\r
+}\r
+\r
+.wall-item-links-wrapper {\r
+       float: left;\r
+}\r
+\r
+.wall-item-delete-wrapper {\r
+       float: right;\r
+}\r
+\r
+/*.wall-item-delete-end {\r
+       clear: both;\r
+}*/\r
+\r
+.wall-item-delete-icon {\r
+       border: none;\r
+}\r
+\r
+\r
+/*.wall-item-wrapper-end {\r
+       clear: both;\r
+}*/\r
+.wall-item-name-link {\r
+       font-weight: bold;\r
+       text-decoration: none;\r
+       color: #3172BD;\r
+}\r
+.wall-item-photo {\r
+       border: none;\r
+}\r
+.comment .wall-item-photo {\r
+       width: 50px !important; \r
+       height: 50px !important;\r
+       border-top-left-radius: 10px;\r
+}\r
+.wall-item-content {\r
+       float: left;\r
+       margin-left: 3px;\r
+/*     padding-right: 1em;\r
+       max-height: 500px;\r
+       overflow: auto;*/\r
+}\r
+\r
+.wall-item-content img {\r
+       max-width: 290px;\r
+       border-radius: 7px;\r
+/*     -moz-border-radius: 7px;*/\r
+       -webkit-border-radius: 7px;\r
+}\r
+\r
+.comment .wall-item-content img {\r
+       max-width: 280px;\r
+}\r
+\r
+.divgrow-showmore {\r
+       display: block;\r
+       clear: both;\r
+       text-align: center;\r
+       outline: 0;\r
+       border-top: 1px dotted #888;\r
+}\r
+\r
+\r
+.wall-item-title {\r
+       float: left;\r
+       font-weight: bold;\r
+       font-size: 1.6em; \r
+       /*width: 450px;*/\r
+}\r
+\r
+/*.wall-item-title-end {\r
+       clear: both;\r
+}*/\r
+\r
+.wall-item-body {\r
+       text-align: justify;\r
+       float: left;\r
+/*     width: 300px;*/\r
+       overflow: hidden;\r
+       margin-top: 10px;\r
+       padding-right: 1em;\r
+       line-height: 23px;\r
+}\r
+\r
+.wall-item-body code {\r
+       width: 260px;\r
+       overflow: hidden;\r
+}\r
+\r
+.comment .wall-item-body {\r
+       margin-left: 5px;\r
+       padding-right: 0.5em;\r
+/*     width: 280px;*/\r
+}\r
+\r
+.comment .wall-item-body blockquote {\r
+       margin-left: 0px;\r
+       margin-right: 0px;\r
+       width: 260px;\r
+}\r
+\r
+.wall-item-tools {\r
+       clear: both;\r
+/*     background-image: url("head.jpg");\r
+       background-position: 0 -20px;\r
+       background-repeat: repeat-x;*/\r
+       padding: 5px 5px 0px;\r
+       height: 32px;\r
+}\r
+.wall-item-author {\r
+/*     margin-top: 10px;*/\r
+       margin-top: 0px;\r
+}\r
+\r
+.comment .wall-item-tools {\r
+/*     background:none;*/\r
+/*     background-image: url("head.jpg");\r
+       background-position: 0 -20px;\r
+       background-repeat: repeat-x;*/\r
+       border-bottom-left-radius: 10px;\r
+       border-bottom-right-radius: 10px;\r
+} \r
+\r
+\r
+.comment-edit-wrapper {\r
+       margin-top: 15px;\r
+       background: #f3f3f3;\r
+       margin-left: 50px;\r
+}\r
+\r
+.comment-wwedit-wrapper {\r
+       display: block;\r
+       margin-top: 15px;\r
+       background: #f3f3f3;\r
+       margin-left: 10px;\r
+       margin-right: 10px;\r
+}\r
+\r
+.comment-wwedit-wrapper.comment {\r
+       margin-left: 40px;\r
+       margin-right: 40px;\r
+       border-radius: 10px;\r
+}\r
+\r
+\r
+.comment-edit-photo {\r
+       margin-top: 15px;\r
+       margin-left: 10px;\r
+       margin-bottom: 10px;\r
+       width: 25px;\r
+       float: left;\r
+}\r
+.comment-edit-photo img {\r
+       width: 25px;\r
+}\r
+.comment-edit-text-empty, .comment-edit-text-full {\r
+/*     float: left;*/\r
+/*     -moz-border-radius: 3px;*/\r
+       -webkit-border-radius: 3px;\r
+       border-radius: 3px;     \r
+       border: 1px solid #cccccc;\r
+       padding: 3px 1px 1px 3px;\r
+}\r
+\r
+.comment-edit-text-empty {\r
+       color: gray;\r
+       height: 30px;\r
+       width: 175px;\r
+/*     overflow: auto;*/\r
+       margin-top: 40px;\r
+       margin-bottom: 10px;\r
+       margin-left: 20px;\r
+}\r
+\r
+.comment-edit-text-full {\r
+       color: black;\r
+       height: 150px;\r
+/*     width: 350px;\r
+       overflow: auto;*/\r
+       width: 250px;\r
+       margin-top: 15px;\r
+       margin-left: 20px;\r
+}\r
+\r
+.comment .comment-edit-text-empty {\r
+       width: 120px;\r
+}\r
+.comment .comment-edit-text-full {\r
+       margin-left: 10px;\r
+       width: 210px;\r
+}\r
+\r
+\r
+.comment-edit-text-end {\r
+       clear: both;\r
+}\r
+\r
+.comment-edit-submit {\r
+       font-size: 18px;\r
+       padding: 5px 10px;\r
+       margin: 10px 0px 10px 110px;\r
+}\r
+\r
+#profile-jot-wrapper {\r
+       padding-left: 10px;\r
+}\r
+\r
+#profile-jot-plugin-wrapper,\r
+#profile-jot-submit-wrapper {\r
+       margin-top: 15px;\r
+}\r
+\r
+#profile-jot-submit {\r
+       float: left;\r
+       font-size: 18px;\r
+       padding: 5px 8px;\r
+}\r
+#profile-upload-wrapper {\r
+       float: left;\r
+       margin-left: 30px;\r
+}\r
+#profile-attach-wrapper {\r
+       float: left;\r
+       margin-left: 15px;\r
+}\r
+#profile-rotator {\r
+       float: left;\r
+       margin-left: 30px;\r
+}\r
+#profile-link-wrapper {\r
+       float: left;\r
+       margin-left: 15px;\r
+}\r
+#profile-youtube-wrapper {\r
+       float: left;\r
+       margin-left: 15px;\r
+}\r
+#profile-video-wrapper {\r
+       float: left;\r
+       margin-left: 15px;\r
+}\r
+#profile-audio-wrapper {\r
+       float: left;\r
+       margin-left: 15px;\r
+}\r
+#profile-location-wrapper {\r
+       float: left;\r
+       margin-left: 15px;\r
+}\r
+#jot-preview-link {\r
+       display: none;\r
+       float: left;\r
+       margin-left: 45px;\r
+       margin-top: 0px !important;\r
+}\r
+\r
+\r
+#profile-nolocation-wrapper {\r
+       float: left;\r
+       margin-left: 15px;\r
+}\r
+#profile-title-wrapper {\r
+       float: left;\r
+       margin-left: 15px;\r
+}\r
+\r
+#profile-jot-perms {\r
+       float: left;\r
+       margin-left: 40px;\r
+       font-weight: bold;\r
+       font-size: 1.2em;\r
+}\r
+\r
+\r
+#profile-jot-perms-end {\r
+       /*clear: left;*/\r
+       height: 30px;\r
+}\r
+\r
+#profile-jot-plugin-end{\r
+  clear: both;\r
+}\r
+.profile-jot-net {\r
+       float: left;\r
+       margin-right: 10px;\r
+       margin-top: 5px;\r
+       margin-bottom: 5px;\r
+}\r
+\r
+#profile-jot-networks-end {\r
+       clear: both;\r
+}\r
+\r
+.profile-jot-box {\r
+       margin-top: 50px;\r
+}\r
+.profile-edit-textarea {\r
+       margin-left: 20px;\r
+}\r
+\r
+#profile-jot-end {\r
+       /*clear: both;*/\r
+       margin-bottom: 30px;\r
+}\r
+#about-jot-submit-wrapper {\r
+       margin-top: 15px;\r
+}\r
+#about-jot-end {\r
+       margin-bottom: 30px;\r
+}\r
+#contacts-main {\r
+       margin-bottom: 30px;\r
+}\r
+\r
+#profile-listing-desc {\r
+       margin-left: 30px;\r
+}\r
+\r
+#profile-listing-new-link-wrapper {\r
+       margin-left: 30px;\r
+       margin-bottom: 30px;\r
+}\r
+.profile-listing-photo-wrapper {\r
+       float: left;\r
+}\r
+\r
+.profile-listing-edit-buttons-wrapper {\r
+       clear: both;\r
+}\r
+.profile-listing-photo-edit-link {\r
+       float: left;\r
+       width: 125px;\r
+}\r
+.profile-listing-end {\r
+       clear: both;\r
+}\r
+.profile-listing-edit-buttons-wrapper img{\r
+       border: none;\r
+       margin-right: 20px;\r
+}\r
+.profile-listing {\r
+       float: left;\r
+       margin-left: 30px;\r
+       margin-top: 25px;\r
+}\r
+.profile-listing-visible {\r
+       margin-left: 100px;\r
+}\r
+.profile-listing-name {\r
+       float: left;\r
+       margin-left: 12px;\r
+       margin-top: 10px;\r
+       color: #3172BD;\r
+       font-weight: bold;\r
+       width: 200px;\r
+\r
+}\r
+.fortune {\r
+       margin-top: 50px;\r
+       color: #4444FF;\r
+       font-weight: bold;\r
+       margin-bottom: 20px;\r
+}\r
+\r
+\r
+.directory-end {\r
+       clear: both;\r
+}\r
+.directory-name {\r
+       text-align: center;\r
+}\r
+.directory-photo {\r
+       margin-left: 15px;\r
+}\r
+.directory-details {\r
+       font-size: 0.7em;\r
+       text-align: center;\r
+       margin-left: 5px;\r
+       margin-right: 5px;\r
+}\r
+.directory-item {\r
+       float: left;\r
+/*     width: 225px;\r
+       height: 260px;*/\r
+       padding-left: 15px;\r
+       width: 130px;\r
+       height: 235px;\r
+       overflow: auto;\r
+}\r
+\r
+#directory-search-wrapper {\r
+       margin-top: 20px;\r
+       margin-right: 20px;\r
+       margin-bottom: 50px;\r
+}\r
+\r
+#directory-search-end {\r
+}\r
+\r
+.directory-photo-img {\r
+       width: 125px;\r
+       border: none;\r
+}\r
+\r
+\r
+.pager {\r
+  margin-top: 30px;\r
+  margin-right: auto;\r
+  margin-left: auto;\r
+\r
+  padding-top: 10px;\r
+  padding-bottom: 10px;\r
+  padding-left: 10px;\r
+  text-align: center;\r
+/*  line-height: 2.75em;*/\r
+}\r
+\r
+.pager a {\r
+       font-size: 1.5em;\r
+       padding: 0.2em 1em;\r
+       border: 1px solid #aaa;\r
+       border-radius: 10px;\r
+/*     -moz-border-radius: 10px;*/\r
+       -webkit-border-radius: 10px;\r
+}\r
+\r
+\r
+.pager_first,\r
+.pager_last,\r
+.pager_prev,\r
+.pager_next,\r
+.pager_n {\r
+/*     float: left;\r
+       border: 1px solid black;\r
+       border-radius: 7px;\r
+       background: #EEE;\r
+       text-align: center;\r
+       width: 50px;\r
+       margin-right: 5px;\r
+       margin-bottom: 10px;*/\r
+/*     float: left;*/\r
+/*     margin-right: 15px;\r
+       margin-left: 15px;*/\r
+}\r
+\r
+.pager_first,\r
+.pager_last,\r
+.pager_n {\r
+       display: none;\r
+}\r
+\r
+/*.pager_first a,\r
+.pager_last a,\r
+.pager_prev a,\r
+.pager_next a {\r
+       padding-top: 5px;\r
+       padding-bottom: 5px;\r
+       padding-left: 25px;\r
+       padding-right: 30px;\r
+\r
+       border: 2px solid #AAAAAA;\r
+       border-radius: 10px;\r
+       -moz-border-radius: 10px;\r
+       -webkit-border-radius: 10px;\r
+    font-size: 1.25em;\r
+       text-align: center;\r
+       text-decoration: none;\r
+}\r
+.pager_n a {\r
+       padding-top: 2px;\r
+       padding-bottom: 2px;\r
+       padding-left: 9px;\r
+       padding-right: 18px;\r
+       text-decoration: none;\r
+}*/\r
+\r
+.pager_prev a,\r
+.pager_next a {\r
+       font-size: 1.5em;\r
+       padding: 0.2em 1em;\r
+       border: 1px solid #aaa;\r
+       border-radius: 10px;\r
+/*     -moz-border-radius: 10px;*/\r
+       -webkit-border-radius: 10px;\r
+}\r
+\r
+.pager_current {\r
+       display: none;\r
+       float: left;\r
+       border: 1px solid black;\r
+       border-radius: 7px;\r
+/*     -moz-border-radius: 7px;*/\r
+       -webkit-border-radius: 7px;\r
+       background: #FFCCCC;\r
+       font-size: 1.25em;\r
+       text-align: center;\r
+       width: 50px;\r
+       margin-right: 5px;\r
+       margin-bottom: 10px;\r
+}\r
+\r
+\r
+#advanced-profile-name-wrapper,\r
+#advanced-profile-gender-wrapper,\r
+#advanced-profile-dob-wrapper,\r
+#advanced-profile-age-wrapper,\r
+#advanced-profile-marital-wrapper,\r
+#advanced-profile-sexual-wrapper,\r
+#advanced-profile-homepage-wrapper,\r
+#advanced-profile-politic-wrapper,\r
+#advanced-profile-religion-wrapper,\r
+#advanced-profile-about-wrapper,\r
+#advanced-profile-interest-wrapper,\r
+#advanced-profile-contact-wrapper,\r
+#advanced-profile-music-wrapper,\r
+#advanced-profile-book-wrapper,\r
+#advanced-profile-tv-wrapper,\r
+#advanced-profile-film-wrapper,\r
+#advanced-profile-romance-wrapper,\r
+#advanced-profile-work-wrapper,\r
+#advanced-profile-education-wrapper {\r
+       margin-top: 20px;\r
+}\r
+\r
+#advanced-profile-name-text,\r
+#advanced-profile-gender-text,\r
+#advanced-profile-dob-text,\r
+#advanced-profile-age-text,\r
+#advanced-profile-marital-text,\r
+#advanced-profile-sexual-text,\r
+#advanced-profile-homepage-text,\r
+#advanced-profile-politic-text,\r
+#advanced-profile-religion-text,\r
+#advanced-profile-about-text,\r
+#advanced-profile-interest-text,\r
+#advanced-profile-contact-text,\r
+#advanced-profile-music-text,\r
+#advanced-profile-book-text,\r
+#advanced-profile-tv-text,\r
+#advanced-profile-film-text,\r
+#advanced-profile-romance-text,\r
+#advanced-profile-work-text,\r
+#advanced-profile-education-text {\r
+       width: 300px;\r
+       float: left;\r
+}\r
+\r
+#advanced-profile-name-end,\r
+#advanced-profile-gender-end,\r
+#advanced-profile-dob-end,\r
+#advanced-profile-age-end,\r
+#advanced-profile-marital-end,\r
+#advanced-profile-sexual-end,\r
+#advanced-profile-homepage-end,\r
+#advanced-profile-politic-end,\r
+#advanced-profile-religion-end {\r
+       height: 10px;\r
+}\r
+\r
+#advanced-profile-about-end,\r
+#advanced-profile-interest-end,\r
+#advanced-profile-contact-end,\r
+#advanced-profile-music-end,\r
+#advanced-profile-book-end,\r
+#advanced-profile-tv-end,\r
+#advanced-profile-film-end,\r
+#advanced-profile-romance-end,\r
+#advanced-profile-work-end,\r
+#advanced-profile-education-end {\r
+\r
+\r
+}\r
+\r
+#advanced-profile-name,\r
+#advanced-profile-gender,\r
+#advanced-profile-dob,\r
+#advanced-profile-age,\r
+#advanced-profile-marital,\r
+#advanced-profile-sexual,\r
+#advanced-profile-homepage,\r
+#advanced-profile-politic,\r
+#advanced-profile-religion {\r
+       float: left;\r
+\r
+}\r
+\r
+\r
+#advanced-profile-about,\r
+#advanced-profile-interest,\r
+#advanced-profile-contact,\r
+#advanced-profile-music,\r
+#advanced-profile-book,\r
+#advanced-profile-tv,\r
+#advanced-profile-film,\r
+#advanced-profile-romance,\r
+#advanced-profile-work,\r
+#advanced-profile-education {\r
+       margin-top: 10px;\r
+       margin-left: 50px;\r
+       margin-right: 20px;\r
+       padding: 10px;\r
+       border: 1px solid #CCCCCC;\r
+}\r
+\r
+#advanced-profile-with {\r
+       float: left;\r
+       margin-left: 15px;\r
+}\r
+\r
+#contact-edit-wrapper {\r
+       margin-top: 10px;\r
+}\r
+\r
+#contact-edit-banner-name {\r
+       font-size: 1.4em;\r
+       font-weight: bold;\r
+}\r
+\r
+#contact-edit-poll-wrapper {\r
+       margin-top: 15px;\r
+}\r
+\r
+#contact-edit-last-update-text {\r
+       float: left;\r
+       clear: left;\r
+       margin-top: 30px;\r
+}\r
+\r
+#contact-edit-poll-text {\r
+       float: left;\r
+       clear: left;\r
+       margin-top: 15px;\r
+       margin-bottom: 0px;\r
+}\r
+\r
+#contact-edit-update-now {\r
+       margin-top: 15px;\r
+}\r
+\r
+#contact-edit-links{\r
+       clear: both;\r
+}\r
+\r
+#contact-edit-links ul {\r
+       list-style: none;\r
+       list-style-type: none;\r
+       margin-left: 0px;\r
+       padding-left: 0px;\r
+}\r
+\r
+#contact-edit-links li {\r
+       margin-top: 5px;\r
+}\r
+\r
+#contact-edit-drop-link {\r
+       float: right;\r
+       margin-right: 10px;\r
+}\r
+\r
+#contact-edit-nav-end {\r
+       clear: both;\r
+}\r
+\r
+#contact-edit-wrapper {\r
+       width: 100%;\r
+}\r
+\r
+#update_now_link {\r
+       float: left;\r
+       clear: left;\r
+       margin-bottom: 20px;\r
+}\r
+\r
+#label_id_hidden, #id_hidden {\r
+       margin-top: 30px;\r
+}\r
+#help_id_hidden {\r
+       margin-top: 30px;\r
+}\r
+\r
+#contact-edit-end {\r
+       clear: both;\r
+       margin-top: 15px;\r
+}\r
+\r
+#contact-profile-selector {\r
+       width: 175px;\r
+       margin-left: 0px;\r
+}\r
+\r
+.contact-edit-submit {\r
+       margin-top: 20px;\r
+       padding: 0.2em 0.5em;\r
+       font-size: 18px;\r
+}\r
+\r
+\r
+.contact-photo-menu-button {\r
+/*     position: absolute;\r
+       background-image: url("photo-menu.jpg");\r
+       background-position: top left; \r
+       background-repeat: no-repeat;\r
+       margin: 0px; padding: 0px;\r
+       width: 16px;\r
+       height: 16px;\r
+       top: 64px; left:0px;\r
+       overflow: hidden;\r
+       text-indent: 40px;\r
+       display: none;*/\r
+       \r
+}\r
+.contact-photo-menu {\r
+       width: 130px;\r
+       border: 1px solid #AAA;\r
+       background: #FFFFFF;\r
+       position: absolute;\r
+       left: -30px; top: 80px;\r
+       display: none;\r
+       z-index: 10000;\r
+/*     -moz-box-shadow: 3px 3px 5px #555;*/\r
+       -webkit-box-shadow: 3px 3px 5px #555;\r
+       box-shadow: 3px 3px 5px #555;\r
+}\r
+.contact-photo-menu ul { margin:0px; padding: 0px; list-style: none }\r
+.contact-photo-menu li a { display: block; padding: 2px; }\r
+.contact-photo-menu li a:hover { color: #FFFFFF; background: #3465A4; text-decoration: none; }\r
+\r
+\r
+#block-message, #ignore-message, #archive-message, #lost-contact-message {\r
+       color: #FF0000;\r
+}\r
+\r
+#profile-edit-insecure {\r
+       margin-top: 20px;\r
+       color: #FF0000;\r
+       font-size: 1.1em;\r
+       border: 1px solid #FF8888;\r
+       background-color: #FFEEEE;\r
+       padding-left: 5px;\r
+       /*: 3px 3px 3px 5px; */\r
+       width: 587px;\r
+}\r
+\r
+#profile-jot-desc {\r
+       /*float: left;*/\r
+       width: 100%;\r
+       color: #FF0000;\r
+       margin-top: 10px;\r
+       margin-bottom: 10px;\r
+}\r
+\r
+#profile-jot-text {\r
+       width: 90%;\r
+       height: 20px;\r
+       color:#cccccc;\r
+       border: 1px solid #cccccc;\r
+       padding: 3px 0px 0px 5px;\r
+/*     -moz-border-radius: 3px;*/\r
+       -webkit-border-radius: 3px;\r
+       border-radius: 3px;     \r
+}\r
+\r
+\r
+/** acl **/\r
+#photo-edit-perms-select,\r
+#photos-upload-permissions-wrapper,\r
+#profile-jot-acl-wrapper{\r
+       display:block!important;\r
+}\r
+\r
+#photos-usage-message {\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#profile-jot-acl-wrapper{\r
+       width:270px;\r
+       padding-left:10px;\r
+       height:auto;\r
+       overflow:visible;\r
+}\r
+\r
+#acl-wrapper {\r
+       width: 270px;\r
+       float:left;\r
+}\r
+#acl-search {\r
+       display: none;\r
+       float:right;\r
+       background: #ffffff url("../../../images/search_18.png") no-repeat right center;\r
+       padding-right:20px;\r
+}\r
+#acl-showall {\r
+       float: left;\r
+       display: block;\r
+       width: auto;\r
+       height: 18px;\r
+       background-color: #cccccc;\r
+       background-image: url("../../../images/show_all_off.png");\r
+       background-position: 7px 7px;\r
+       background-repeat: no-repeat;\r
+       padding: 7px 5px 0px 30px;\r
+       -webkit-border-radius: 5px ;\r
+/*     -moz-border-radius: 5px;*/\r
+       border-radius: 5px;\r
+       color: #999999;\r
+}\r
+#acl-showall.selected {\r
+       color: #000000;\r
+       background-color: #ff9900;\r
+       background-image: url("../../../images/show_all_on.png");\r
+}\r
+\r
+#acl-list {\r
+/*     height: 210px;*/\r
+       border: 1px solid #cccccc;\r
+       clear: both;\r
+       margin-top: 30px;\r
+       overflow: visible;\r
+}\r
+#acl-list-content {\r
+       \r
+}\r
+.acl-list-item {\r
+       display: block;\r
+       width: 120px;\r
+       height: 30px;\r
+       border: 1px solid #cccccc;\r
+/*     -moz-border-radius: 4px;*/\r
+       -webkit-border-radius: 4px;\r
+       border-radius: 4px;\r
+       margin-top: 5px;\r
+       margin-bottom: 5px;\r
+       margin-right: 2px;\r
+       margin-left: 2px;\r
+       padding-left: 5px;\r
+       float: left;\r
+}\r
+.acl-list-item img{\r
+       display: none;\r
+       width:22px;\r
+       height: 22px;\r
+       float: left;\r
+       margin: 4px;\r
+}\r
+.acl-list-item p { height: 12px; font-size: 10px; margin: 0px; padding: 2px 0px 1px; overflow: hidden;}\r
+.acl-list-item a { \r
+       font-size: 8px;\r
+       display: block;\r
+       width: 40px;\r
+       height: 10px;\r
+       float: left;\r
+       color: #999999;\r
+       background-color: #cccccc;\r
+       background-position: 3px 3px;\r
+       background-repeat: no-repeat;\r
+       margin-right: 5px;\r
+       -webkit-border-radius: 2px ;\r
+/*     -moz-border-radius: 2px;*/\r
+       border-radius: 2px;\r
+       padding-left: 15px;\r
+}\r
+#acl-wrapper a:hover {\r
+       text-decoration: none;\r
+       color:#000000;\r
+}\r
+.acl-button-show { background-image: url("../../../images/show_off.png"); }\r
+.acl-button-hide { background-image: url("../../../images/hide_off.png"); }\r
+\r
+.acl-button-show.selected {\r
+       color: #000000;\r
+       background-color: #9ade00;\r
+       background-image: url("../../../images/show_on.png");\r
+}\r
+.acl-button-hide.selected {\r
+       color: #000000;\r
+       background-color: #ff4141;\r
+       background-image: url("../../../images/hide_on.png");\r
+}\r
+.acl-list-item.groupshow { border-color: #9ade00; }\r
+.acl-list-item.grouphide { border-color: #ff4141; }\r
+/** /acl **/\r
+\r
+\r
+#group-new-submit-wrapper {\r
+       margin-top: 30px;\r
+}\r
+\r
+#group-edit-name-label {\r
+       float: left;\r
+       width: 175px;\r
+       margin-top: 20px;\r
+       margin-bottom: 20px;\r
+}\r
+\r
+#group-edit-name {\r
+       float: left;\r
+       width: 225px;\r
+       margin-top: 20px;\r
+       margin-bottom: 20px;\r
+}\r
+\r
+#group-edit-name-wrapper {\r
+\r
+\r
+}\r
+\r
+\r
+#group_members_select_label {\r
+       display: block;\r
+       float: left;\r
+       width: 175px;\r
+}\r
+\r
+.group_members_select {\r
+       float: left;\r
+       width: 230px;\r
+       overflow: auto;\r
+}\r
+\r
+#group_members_select_end {\r
+       clear: both;\r
+}\r
+#group-edit-name-end {\r
+       clear: both;\r
+}\r
+\r
+#prvmail-to-label, #prvmail-subject-label, #prvmail-message-label {\r
+       margin-bottom: 10px;\r
+       margin-top: 20px;\r
+}\r
+\r
+#prvmail-submit {\r
+       float: left;\r
+       font-size: 18px;\r
+       padding: 0.25em 0.5em;\r
+       margin-top: 10px;\r
+       margin-right: 30px;\r
+}\r
+#prvmail-upload-wrapper,\r
+#prvmail-link-wrapper,\r
+#prvmail-rotator-wrapper {\r
+       float: left;\r
+       margin-top: 10px;\r
+       margin-right: 10px;\r
+       width: 24px;\r
+}\r
+\r
+#prvmail-end {\r
+       clear: both;\r
+}\r
+\r
+.mail-list-sender,\r
+.mail-list-detail {\r
+       float: left;\r
+}\r
+.mail-list-detail {\r
+       margin-left: 20px;\r
+}\r
+\r
+.mail-list-subject {\r
+       font-size: 1.1em;\r
+       margin-top: 10px;\r
+}\r
+a.mail-list-link {\r
+    display: block;\r
+    font-size: 1.3em;\r
+    padding: 4px 0;\r
+}\r
+\r
+/*\r
+*a.mail-list-link:hover {\r
+*      background-color: #15607B;\r
+*      color: #F5F6FB;\r
+*}\r
+*/\r
+\r
+.mail-list-outside-wrapper-end {\r
+       clear: both;\r
+}\r
+\r
+.mail-list-outside-wrapper {\r
+       margin-top: 30px;\r
+}\r
+\r
+.mail-list-delete-wrapper {\r
+       float: right;\r
+       margin-right: 30px;\r
+       margin-top: 15px;\r
+}\r
+\r
+.mail-list-delete-icon {\r
+       border: none;\r
+}\r
+\r
+.mail-conv-sender,\r
+.mail-conv-detail {\r
+       float: left;\r
+}\r
+.mail-conv-detail {\r
+       margin-left: 20px;\r
+       margin-bottom: 10px;\r
+       /*width: 270px;*/\r
+}\r
+\r
+.mail-conv-subject {\r
+    font-size: 1.4em;\r
+    margin: 10px 0;\r
+}\r
+\r
+.mail-conv-body {\r
+       padding-top: 20px;\r
+       clear: both;\r
+}\r
+\r
+.mail-conv-outside-wrapper-end {\r
+       clear: both;\r
+}\r
+\r
+.mail-conv-outside-wrapper {\r
+       margin-top: 30px;\r
+}\r
+\r
+.mail-conv-delete-wrapper {\r
+       float: right;\r
+       padding-bottom: 0.5em;\r
+       margin-right: 5px;\r
+       margin-top: 15px;\r
+}\r
+.mail-conv-break {\r
+       clear: both;\r
+}\r
+\r
+.mail-conv-delete-icon {\r
+       border: none;\r
+}\r
+\r
+.message-links ul {\r
+       list-style-type: none;\r
+       padding: 0px;\r
+}\r
+\r
+.message-links li {\r
+       margin-top: 10px;\r
+       float: left;\r
+}\r
+.message-links a {\r
+       padding: 3px 5px;\r
+}\r
+\r
+.message-links-end {\r
+       clear: both;\r
+}\r
+\r
+#sidebar-group-list ul {\r
+       list-style-type: none;\r
+}\r
+\r
+#sidebar-group-list .icon, #sidebar-group-list .iconspacer {\r
+       display: inline-block;\r
+       height: 12px;\r
+       width: 12px;\r
+}\r
+\r
+#sidebar-group-list li {\r
+       margin-top: 10px;\r
+}\r
+\r
+.nets-ul, .fileas-ul, .categories-ul {\r
+       list-style-type: none;\r
+}\r
+\r
+.nets-ul li, .fileas-ul li, .categories-ul li {\r
+       margin-top: 10px;\r
+}\r
+\r
+.nets-link {\r
+       margin-left: 24px;\r
+}\r
+.nets-all {\r
+       margin-left: 42px;\r
+}\r
+\r
+.fileas-link, .categories-link {\r
+       margin-left: 24px;\r
+}\r
+\r
+.fileas-all, .categories-all {\r
+       margin-left: 0px;\r
+}\r
+\r
+#search-save {\r
+       margin-left: 5px;\r
+}\r
+.groupsideedit {\r
+       margin-right: 10px;\r
+}\r
+#saved-search-ul {\r
+       list-style-type: none;\r
+}\r
+.savedsearchdrop, .savedsearchterm {\r
+       float: left;\r
+       margin-top: 10px;\r
+}\r
+.savedsearchterm {\r
+       margin-left: 10px;\r
+}\r
+\r
+\r
+#side-follow-wrapper {\r
+       margin-top: 20px;\r
+}\r
+#side-follow-url, #side-peoplefind-url {\r
+       margin-top: 5px;\r
+}\r
+#side-follow-submit, #side-peoplefind-submit {\r
+       margin-top: 15px;\r
+}\r
+\r
+#side-match-link {\r
+       margin-top: 10px;\r
+}\r
+\r
+aside input[type='text'] {\r
+ width: 174px;\r
+}\r
+\r
+.widget {\r
+       border: 1px solid #DDDDDD;\r
+       padding: 8px;\r
+       margin-top: 5px;\r
+/*     -moz-border-radius:5px;*/\r
+       -webkit-border-radius:5px;\r
+       border-radius:5px;\r
+\r
+}\r
+\r
+\r
+/*.photos {\r
+       height: auto;\r
+       overflow: auto;\r
+}*/\r
+\r
+.photos-end {\r
+       clear: both;\r
+       margin-bottom: 25px;\r
+}\r
+\r
+.photo-album-image-wrapper {\r
+       float: left;\r
+       margin-top: 15px;\r
+       margin-right: 15px;\r
+       margin-left: 15px;\r
+/*     width: 200px; height: 200px; \r
+       overflow: hidden; \r
+       position: relative; */\r
+}\r
+.photo-album-image-wrapper .caption {\r
+       display: none; \r
+       width: 100%;\r
+/*     position: absolute; */\r
+       bottom: 0px; \r
+       padding: 0.5em 0.5em 0px 0.5em;\r
+       background-color: rgba(245, 245, 255, 0.8);\r
+       border-bottom: 2px solid #CCC;\r
+       margin: 0px;\r
+}\r
+.photo-album-image-wrapper a:hover .caption {\r
+       display:block;\r
+}\r
+\r
+#photo-album-end {\r
+       clear: both;\r
+       margin-bottom: 25px;\r
+}\r
+\r
+.photo-top-image-wrapper {\r
+/*     position: relative; */\r
+       float: left;\r
+       margin-top: 15px;\r
+       margin-right: 15px;\r
+       margin-left: 15px;\r
+       margin-bottom: 15px;\r
+/*     width: 200px; height: 200px; \r
+       overflow: hidden; */\r
+}\r
+.photo-top-image-wrapper img {\r
+       max-width: 290px;\r
+       border-radius: 10px;\r
+/*     -moz-border-radius: 10px;*/\r
+       -webkit-border-radius: 10px;\r
+}\r
+.photo-top-album-name {\r
+       width: 100%;\r
+       min-height: 2em;\r
+/*     position: absolute;  */\r
+       bottom: 0px; \r
+       padding: 0px 3px;\r
+       padding-top: 0.5em;\r
+       background-color: rgb(255, 255, 255);\r
+}\r
+#photo-top-end {\r
+       clear: both;\r
+}\r
+\r
+#photo-top-links {\r
+       margin-bottom: 30px;\r
+       margin-left: 30px;\r
+}\r
+\r
+#photos-upload-newalbum-div {\r
+       float: left;\r
+       width: 175px;\r
+}\r
+\r
+#photos-upload-noshare {\r
+       margin-bottom: 10px;\r
+}\r
+#photos-upload-existing-album-text {\r
+       float: left;\r
+       width: 175px;\r
+}\r
+#photos-upload-newalbum {\r
+       float: left;\r
+}\r
+#photos-upload-album-select {\r
+       float: left;\r
+}\r
+\r
+#photos-upload-spacer {\r
+       margin-top: 25px;\r
+}\r
+#photos-upload-new-end, #photos-upload-exist-end {\r
+       clear: both;\r
+}\r
+#photos-upload-exist-end {\r
+       margin-bottom: 15px;\r
+}\r
+#photos-upload-submit {\r
+       margin-top: 15px;\r
+}\r
+\r
+#photos_upload_applet_wrapper {\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#photos-upload-no-java-message {\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#character-counter {\r
+       float: right;\r
+       font-size: 120%;\r
+}\r
+\r
+#character-counter.grey {\r
+       color: #888888;\r
+}\r
+\r
+#character-counter.orange {\r
+       color: orange;\r
+}\r
+#character-counter.red {\r
+       color: red;\r
+}\r
+\r
+#profile-jot-banner-end {\r
+       /* clear: both; */ \r
+}\r
+\r
+#photos-upload-select-files-text {\r
+       margin-top: 15px;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#photos-upload-perms-menu, #photos-upload-perms-menu:visited, #photos-upload-perms-menu:link {\r
+       color: #8888FF;\r
+       text-decoration: none;\r
+       cursor: pointer;\r
+}\r
+\r
+#photos-upload-perms-menu {\r
+       margin-left: 15px;\r
+}\r
+\r
+#photos-upload-perms-menu:hover {\r
+       color: #0000FF;\r
+       text-decoration: underline;\r
+       cursor: pointer;\r
+}\r
+#settings-default-perms-menu {\r
+       margin-top: 15px;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#photo-edit-caption-label, #photo-edit-tags-label, #photo-edit-albumname-label, .photo-edit-rotate-label {\r
+       float: left;\r
+       width: 150px;\r
+}\r
+\r
+#photo-edit-caption-label, #photo-edit-tags-label, #photo-edit-albumname-label {\r
+       font-weight: 700;\r
+}\r
+\r
+#photos-upload-noshare-div {\r
+       margin-top: 140px;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#photos-upload-noshare-label {\r
+       margin-left: 25px;\r
+}\r
+\r
+#photos-upload-noshare {\r
+       float: left;\r
+}\r
+\r
+.photo-perms-icon {\r
+       float: left;\r
+}\r
+\r
+#photo-edit-perms-menu, #photos-upload-perms-menu, #settings-default-perms-menu {\r
+       text-decoration: none;\r
+}\r
+\r
+.photo-jot-perms-text {\r
+       padding-top: 5px;\r
+       padding-left: 40px;\r
+}\r
+\r
+#photo-edit-perms, #photos-upload-perms, #settings-default-perms {\r
+       margin-top: 30px;\r
+}\r
+#photos-upload-perms {\r
+       margin-top: 15px;\r
+       margin-left: 5px;\r
+}\r
+\r
+#photo-edit-perms-select, #photos-upload-permissions-wrapper, #settings-jot-acl-wrapper {\r
+       margin-top: 30px;\r
+       margin-left: 20px;\r
+}\r
+\r
+#advanced-expire-popup {\r
+       padding-left: 1em;\r
+       margin-top: 15px;\r
+       border: 1px solid #aaa;\r
+       border-radius: 10px;\r
+/*     -moz-border-radius: 10px;*/\r
+       -webkit-border-radius: 10px;\r
+}\r
+\r
+#photo-edit-perms-end {\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#photo-edit-caption, #photo-edit-newtag, #photo-edit-albumname {\r
+       float: left;\r
+       margin-bottom: 25px;\r
+}\r
+\r
+.photo-edit-rotate {\r
+       float: left;\r
+       margin-left: 20px;\r
+}\r
+#photo-edit-link-wrap {\r
+       margin-bottom: 15px;\r
+}\r
+#photo-like-div {\r
+       margin-left: 15px;\r
+       margin-bottom: 65px;\r
+}\r
+\r
+#photo-edit-caption-end, #photo-edit-tags-end, #photo-edit-albumname-end, #photo-edit-rotate-end {\r
+       clear: both;\r
+}\r
+\r
+#photo-edit-rotate-end {\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#photo-edit-submit-button, #photo-edit-delete-button, #photos-upload-submit {\r
+       margin-top: 30px;\r
+       padding: 0.25em 0.5em;\r
+       font-size: 18px;\r
+}\r
+#photo-edit-submit-button {\r
+       margin-left: 10px;\r
+}\r
+#photo-edit-delete-button {\r
+       margin-left: 45px;\r
+}\r
+#photos-upload-choose {\r
+       position: absolute;\r
+       top: 460px;\r
+       left: 5px;\r
+}\r
+#photos-upload-submit {\r
+       margin-top: 30px;\r
+       margin-left: 100px;\r
+       margin-bottom: 20px;\r
+}\r
+.settings-submit, .profile-edit-submit-button {\r
+       padding: 0.25em 0.5em;\r
+       margin-bottom: 10px;\r
+       font-size: 18px;\r
+}\r
+#photo-edit-end {\r
+       margin-bottom: 35px;\r
+}\r
+#photo-caption {\r
+       font-size: 110%;\r
+       font-weight: bold;\r
+       margin-top: 15px;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#in-this-photo-text {\r
+       color: #0000FF;\r
+       margin-left: 30px;\r
+}\r
+\r
+#in-this-photo {\r
+       margin-left: 60px;\r
+       margin-top: 10px;\r
+       margin-bottom: 20px;\r
+}\r
+\r
+#photo-album-edit-submit, #photo-album-edit-drop {\r
+       margin-top: 15px;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#photo-album-edit-drop {\r
+       margin-left: 200px;\r
+}\r
+\r
+.group-delete-wrapper {\r
+       float: right;\r
+       margin-right: 50px;\r
+}\r
+\r
+#install-dbhost-label,\r
+#install-dbuser-label,\r
+#install-dbpass-label,\r
+#install-dbdata-label,\r
+#install-tz-desc {\r
+       float: left;\r
+       width: 250px;\r
+       margin-top: 10px;\r
+       margin-bottom: 10px;\r
+\r
+}\r
+\r
+#install-dbhost,\r
+#install-dbuser,\r
+#install-dbpass,\r
+#install-dbdata {\r
+       float: left;\r
+       width: 200px;\r
+       margin-left: 20px;\r
+}\r
+\r
+#install-dbhost-end,\r
+#install-dbuser-end,\r
+#install-dbpass-end,\r
+#install-dbdata-end,\r
+#install-tz-end {\r
+       clear: both;\r
+}\r
+\r
+#install-form select#timezone_select {\r
+       float: left;\r
+       margin-top: 18px;\r
+       margin-left: 20px;\r
+}\r
+\r
+#dfrn-request-networks {\r
+       margin-bottom: 30px;\r
+}\r
+\r
+#pause {\r
+  position: fixed;\r
+  bottom: 5px;\r
+  right: 5px;\r
+}\r
+\r
+.sparkle {\r
+       cursor: url('lock.cur'), pointer;\r
+/*     cursor: pointer !important; */\r
+}\r
+\r
+.contact-block-div {\r
+       float: left;\r
+       width: 52px;\r
+       height: 52px;\r
+}\r
+.contact-block-textdiv {\r
+       float: left;\r
+       width: 150px;\r
+       height: 34px;\r
+}\r
+\r
+#contact-block-end {\r
+       clear: both;\r
+}\r
+.contact-block-link {\r
+       float: left;\r
+}\r
+.contact-block-img {\r
+       width:48px;\r
+       height:48px;\r
+}\r
+\r
+#tag-remove {\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#tagrm li {\r
+       margin-bottom: 10px;\r
+}\r
+\r
+#tagrm-submit, #tagrm-cancel {\r
+       margin-top: 25px;\r
+}\r
+\r
+#tagrm-cancel {\r
+       margin-left: 15px;\r
+}\r
+\r
+.wall-item-conv {\r
+       margin-top: 5px;\r
+       margin-bottom: 25px;\r
+}\r
+\r
+#search-submit {\r
+       margin-left: 15px;\r
+}\r
+\r
+#search-box {\r
+       margin-bottom: 25px;\r
+}\r
+\r
+.location-label, .gender-label, .marital-label, .homepage-label {\r
+       float: left;\r
+       text-align: right;\r
+       display: block;\r
+       width: 65px;\r
+}\r
+\r
+.adr, .x-gender, .marital-text, .homepage-url {\r
+       float: left;\r
+       display: block;\r
+       margin-left: 8px;\r
+}\r
+\r
+.profile-clear {\r
+       clear: both;\r
+}\r
+\r
+\r
+.clear {\r
+       clear: both;\r
+}\r
+\r
+.cc-license {\r
+       margin-top: 50px;\r
+       font-size: 70%;\r
+}\r
+\r
+\r
+#plugin-settings-link, #account-settings-link {\r
+       margin-bottom: 10px;\r
+}\r
+\r
+#uexport-link {\r
+       margin-bottom: 20px;\r
+}\r
+\r
+/* end from default */\r
+       \r
+\r
+.fn {\r
+       padding: 0px 0px 5px 12px;\r
+       font-size: 120%;\r
+       font-weight: bold;\r
+}\r
+\r
+.vcard .title {\r
+       margin-bottom: 5px;\r
+       margin-left: 12px;\r
+}\r
+\r
+.vcard dl {\r
+       clear: both;\r
+}\r
+\r
+#birthday-title {\r
+       float: left;\r
+       font-weight: bold;      \r
+}\r
+\r
+#birthday-adjust {\r
+       float: left;\r
+       font-size: 75%;\r
+       margin-left: 10px;\r
+}\r
+\r
+#birthday-title-end {\r
+       clear: both;\r
+}\r
+\r
+.birthday-list {\r
+       margin-left: 15px;\r
+}\r
+\r
+#birthday-wrapper {\r
+       margin-bottom: 20px;\r
+}\r
+\r
+#network-new-link {\r
+       margin-top: 15px;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+\r
+.tool-wrapper {\r
+  float: left;\r
+  margin-left: 15px;\r
+}\r
+\r
+.tool-link {\r
+  cursor: pointer;\r
+}\r
+\r
+.eventcal {\r
+       float: left;\r
+       font-size: 20px;\r
+}\r
+\r
+#event-summary-text {\r
+       margin-top: 15px;\r
+}\r
+\r
+#event-share-checkbox {\r
+       float: left;\r
+       margin-top: 10px;\r
+}\r
+\r
+#event-share-text {\r
+       float: left;\r
+       margin-top: 10px;\r
+       margin-left: 5px;\r
+}\r
+\r
+#event-share-break {\r
+       clear: both;\r
+       margin-bottom: 10px;\r
+}\r
+\r
+#event-summary {\r
+       width: 280px;\r
+}\r
+\r
+.vevent {\r
+       border: 1px solid #CCCCCC;\r
+}\r
+\r
+.vevent .event-summary {\r
+       margin-left: 10px;\r
+       margin-right: 10px;\r
+       font-weight: bold;\r
+}\r
+\r
+.vevent .event-description, .vevent .event-location {\r
+       margin-left: 10px;\r
+       margin-right: 10px;\r
+}\r
+.vevent .event-start {\r
+       margin-left: 10px;\r
+       margin-right: 10px;\r
+}\r
+\r
+#new-event-link {\r
+       margin-bottom: 10px;\r
+}\r
+\r
+.edit-event-link, .plink-event-link {\r
+       float: left;\r
+       margin-top: 4px;\r
+       margin-right: 4px;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+.event-description:before {\r
+       content: url('../../../images/calendar.png');\r
+       margin-right: 15px;\r
+}\r
+\r
+.event-start, .event-end {\r
+       font-size: 14px;\r
+       margin-left: 10px;\r
+       width: 280px;\r
+       clear: both;\r
+       padding-bottom: 1.5em;\r
+}\r
+\r
+.event-start .dtstart, .event-end .dtend {\r
+       clear: both;\r
+       float: left;\r
+}\r
+\r
+.event-list-date {\r
+       margin-bottom: 10px;\r
+}\r
+\r
+.prevcal, .nextcal {\r
+       float: left;\r
+       margin-left: 32px;\r
+       margin-right: 32px;\r
+       margin-top: 64px;\r
+}\r
+.event-calendar-end {\r
+       clear: both;\r
+}\r
+\r
\r
+.calendar {\r
+       font-family: Courier, monospace;\r
+}\r
+.today {\r
+       font-weight: bold;\r
+       color: #FF0000;\r
+}\r
+\r
+.settings-block {\r
+       border: 1px solid #AAA;\r
+       margin: 10px;\r
+       padding: 10px;\r
+}\r
+\r
+.app-title {\r
+       margin: 10px;\r
+}\r
+\r
+#identity-manage-desc {\r
+       margin-top:15px;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#identity-manage-choose {\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#identity-submit {\r
+       margin-top: 20px;\r
+}\r
+\r
+#photo-nav {\r
+       position: relative;\r
+       height: 55px;\r
+}\r
+\r
+#photo-prev-link {\r
+       position: absolute;\r
+       left: 5px;\r
+}\r
+#photo-next-link {\r
+       position: absolute;\r
+       right: 5px;\r
+}\r
+#photo-prev-link, #photo-next-link {\r
+       padding: 10px;\r
+/*     float: left;*/\r
+}\r
+\r
+/*#photo-photo {\r
+       float: left;\r
+}*/\r
+\r
+#photo-photo img {\r
+       max-width: 310px;\r
+}\r
+\r
+#photo-photo-end {\r
+       clear: both;\r
+}\r
+\r
+.profile-match-photo {\r
+       float: left;\r
+       text-align: center;\r
+       width: 120px;\r
+}\r
+\r
+.profile-match-name {\r
+       float: left;\r
+       text-align: center;\r
+       width: 120px;\r
+       overflow: hidden;\r
+}\r
+\r
+.profile-match-break,\r
+.profile-match-end {\r
+       clear: both;\r
+}\r
+\r
+.profile-match-connect {\r
+       text-align: center;\r
+       font-weight: bold;\r
+}\r
+\r
+.profile-match-wrapper {\r
+       float: left;\r
+       padding: 10px;\r
+       width: 120px;\r
+       height: 120px;\r
+       scroll: auto;\r
+}\r
+#profile-match-wrapper-end {\r
+       clear: both;\r
+}\r
+.side-link {\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#language-selector {\r
+       position: absolute;\r
+       top: 0px;\r
+       left: 16px;\r
+}\r
+\r
+#group-members {\r
+       margin-top: 20px;\r
+       padding: 10px;\r
+       height: 250px;\r
+       overflow: auto;\r
+       border: 1px solid #ddd;\r
+}\r
+\r
+#group-members-end {\r
+       clear: both;\r
+}\r
+\r
+#group-separator {\r
+       margin-top: 10px;\r
+       margin-bottom: 10px;\r
+}\r
+\r
+#group-all-contacts {\r
+       padding: 10px;\r
+       height: 450px;\r
+       overflow: auto;\r
+       border: 1px solid #ddd;\r
+}\r
+\r
+#group-all-contacts-end {\r
+       clear: both;\r
+       margin-bottom: 10px;\r
+}\r
+\r
+#group-edit-desc {\r
+       margin-top: 15px;\r
+}\r
+\r
+\r
+#prof-members {\r
+       margin-top: 20px;\r
+       padding: 10px;\r
+       height: 250px;\r
+       overflow: auto;\r
+       border: 1px solid #ddd;\r
+}\r
+\r
+#prof-members-end {\r
+       clear: both;\r
+}\r
+\r
+#prof-separator {\r
+       margin-top: 10px;\r
+       margin-bottom: 10px;\r
+}\r
+\r
+#prof-all-contacts {\r
+       padding: 10px;\r
+       height: 450px;\r
+       overflow: auto;\r
+       border: 1px solid #ddd;\r
+}\r
+\r
+#prof-all-contacts-end {\r
+       clear: both;\r
+       margin-bottom: 10px;\r
+}\r
+\r
+#prof-edit-desc {\r
+       margin-top: 15px;\r
+}\r
+\r
+#crepair-name-label,\r
+#crepair-nick-label,\r
+#crepair-attag-label,\r
+#crepair-url-label,\r
+#crepair-request-label,\r
+#crepair-confirm-label,\r
+#crepair-notify-label,\r
+#crepair-photo-label,\r
+#crepair-poll-label {\r
+       float: left;\r
+       width: 200px;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+#crepair-name,\r
+#crepair-nick,\r
+#crepair-attag,\r
+#crepair-url,\r
+#crepair-request,\r
+#crepair-confirm,\r
+#crepair-notify,\r
+#crepair-photo,\r
+#crepair-poll {\r
+       float: left;\r
+       width: 300px;\r
+}\r
+\r
+\r
+#netsearch-box {\r
+       margin-top: 20px;       \r
+}\r
+\r
+#netsearch-box #search-submit {\r
+       margin: 5px 0px 0px 0px;\r
+}\r
+\r
+.required {\r
+       color: #FF0000;\r
+}\r
+\r
+#event-start-text, #event-finish-text {\r
+       margin-top: 10px;\r
+       margin-bottom: 5px;\r
+}\r
+\r
+#event-nofinish-checkbox, #event-nofinish-text, #event-adjust-checkbox, #event-adjust-text {\r
+       float: left;\r
+}\r
+#event-datetime-break {\r
+       margin-bottom: 10px;\r
+}\r
+\r
+#event-nofinish-break, #event-adjust-break {\r
+       clear: both;\r
+}\r
+\r
+#event-desc-text, #event-location-text {\r
+       margin-top: 10px;\r
+       margin-bottom: 5px;\r
+}\r
+#event-submit {\r
+       margin-top: 10px;\r
+}\r
+\r
+.body-tag, .filesavetags, .categorytags {\r
+       opacity: 0.5;\r
+       filter:alpha(opacity=50);\r
+}\r
+\r
+.body-tag:hover, .filesavetags:hover, .categorytags:hover {\r
+       opacity: 1.0 !important;\r
+       filter:alpha(opacity=100) !important;\r
+}\r
+\r
+.item-select {\r
+       display: none;\r
+       opacity: 0.1;\r
+       filter:alpha(opacity=10);\r
+       float: right;\r
+       margin-right: 10px;\r
+\r
+}\r
+.item-select:hover, .checkeditem {\r
+       opacity: 1;\r
+       filter:alpha(opacity=100);\r
+}\r
+\r
+\r
+#item-delete-selected {\r
+       margin-top: 30px;\r
+}\r
+\r
+#item-delete-selected-end {\r
+       clear: both;\r
+}\r
+#item-delete-selected-icon, #item-delete-selected-desc {\r
+       float: left;\r
+       margin-right: 5px;\r
+}\r
+#item-delete-selected-desc:hover {\r
+       text-decoration: underline;\r
+}\r
+\r
+#lang-select-icon {\r
+       cursor: pointer;\r
+       position: fixed;\r
+       left: 0px;\r
+       top: 0px;\r
+       opacity: 0.2;\r
+       filter:alpha(opacity=20);\r
+}\r
+\r
+#lang-select-icon:hover {\r
+       opacity: 1;\r
+       filter:alpha(opacity=100);\r
+}\r
+\r
+.notif-image {\r
+       height: 80px;\r
+       width: 80px;\r
+       margin-right: 15px;\r
+}\r
+.notification-listing-end {\r
+       clear: both;\r
+       margin-bottom: 15px;\r
+}\r
+\r
+\r
+\r
+/**\r
+ * Plugins settings\r
+ */\r
+\r
+.settings-block > h3,\r
+.settings-heading {\r
+       border-bottom: 1px solid #babdb6;\r
+}\r
\r
+\r
+/**\r
+ * Form fields\r
+ */\r
+.field {\r
+       margin-bottom: 10px;\r
+       padding-bottom: 10px;\r
+       overflow: auto;\r
+       width: 100%\r
+}\r
+\r
+.field label {\r
+       font-weight: 700;\r
+       float: left;\r
+       width: 200px;\r
+}\r
+\r
+.field input,\r
+.field textarea {\r
+       width: 270px;\r
+       margin-left: 20px;\r
+}\r
+.field textarea { height: 100px; }\r
+.field_help {\r
+       display: block;\r
+       margin-left: 20px;\r
+       color: #666666;\r
+       \r
+}\r
+\r
+\r
+.field .onoff {\r
+       float: left;\r
+       width: 80px;\r
+}\r
+.field .onoff a {\r
+       display: block;\r
+       border:1px solid #666666;\r
+       background-image:url("../../../images/onoff.jpg");\r
+       background-repeat: no-repeat;\r
+       padding: 4px 2px 2px 2px;\r
+       height: 16px;\r
+       text-decoration: none;\r
+}\r
+.field .onoff .off {\r
+       border-color:#666666;\r
+       padding-left: 40px;\r
+       background-position: left center;\r
+       background-color: #cccccc;\r
+       color: #666666;\r
+       text-align: right;\r
+}\r
+.field .onoff .on {\r
+       border-color:#204A87;\r
+       padding-right: 40px;\r
+       background-position: right center;\r
+       background-color: #D7E3F1;\r
+       color: #204A87;\r
+       text-align: left;\r
+}\r
+.hidden { display: none!important; }\r
+\r
+.field.radio .field_help { clear: left; margin-left: 20px; }\r
+\r
+/**\r
+ * ADMIN\r
+ */\r
+#pending-update {\r
+       float:right;\r
+       color: #ffffff;\r
+       font-weight: bold;\r
+       background-color: #FF0000;\r
+       padding: 0em 0.3em;\r
+       \r
+}\r
+#adminpage dl {\r
+       clear: left;\r
+       min-height: 40px;\r
+       margin-bottom: 2px;\r
+       padding-bottom: 2px;\r
+       border-bottom: 1px solid black;\r
+}\r
+#adminpage dt {\r
+       width: 180px;\r
+       float: left;\r
+       font-weight: bold;\r
+}\r
+#adminpage dd {\r
+       margin-left: 180px;\r
+}\r
+\r
+#adminpage h3 {\r
+       border-bottom: 1px solid #cccccc;\r
+}\r
+#adminpage .field label {\r
+       font-weight: bold;\r
+}\r
+#adminpage .submit {\r
+       clear:left;\r
+       text-align: right;\r
+}\r
+\r
+#adminpage #pluginslist {\r
+       margin: 0px; padding: 0px;\r
+}\r
+#adminpage .plugin {\r
+       list-style: none;\r
+       display: block;\r
+       border: 1px solid #888888;\r
+       padding: 1em;\r
+       margin-bottom: 5px;\r
+       clear: left;\r
+}\r
+#adminpage .plugin .desc { margin-left: 2.5em;}\r
+#adminpage .toggleplugin {\r
+       float:left;\r
+       margin-right: 1em;\r
+}\r
+\r
+#adminpage table {width:100%; border-bottom: 1px solid #000000; margin: 5px 0px;}\r
+#adminpage table th { text-align: left;}\r
+#adminpage td .icon { float: left;}\r
+#adminpage table#users img { width: 16px; height: 16px; }\r
+#adminpage table tr:hover { background-color: #bbc7d7; }\r
+#adminpage .selectall { text-align: right; }\r
+\r
+#cnftheme {\r
+       display: none;\r
+}\r
+\r
+/*\r
+ * UPDATE\r
+ */\r
+.popup {       \r
+       width: 100%; height: 100%;\r
+       top:0px; left:0px;\r
+       position: absolute;\r
+       display: none;\r
+}\r
+\r
+.popup .background {\r
+       background-color: rgba(0,0,0,128);\r
+       opacity: 0.5;\r
+       width: 100%; height: 100%;\r
+       position: absolute;\r
+       top:0px; left:0px;\r
+}\r
+.popup .panel {\r
+       top:25%;left:25%;width:50%;height:50%;\r
+       padding: 1em;\r
+       position: absolute;\r
+       border: 4px solid #000000;\r
+       background-color: #FFFFFF;\r
+}\r
+.popup .panel .panel_text { display: block; overflow: auto; height: 80%; } \r
+.popup .panel .panel_in { width: 100%; height: 100%;   position: relative; }\r
+.popup .panel .panel_actions {  width: 100%; bottom: 4px; left: 0px; position: absolute; }\r
+.panel_text .progress { width: 50%; overflow: hidden; height: auto; border: 1px solid #cccccc; margin-bottom: 5px}\r
+.panel_text .progress span {float: right; display: block; width: 25%; background-color: #eeeeee; text-align: right;}\r
+\r
+/**\r
+ * OAuth\r
+ */\r
+.oauthapp {\r
+       height: auto; overflow: auto;\r
+       border-bottom: 2px solid #cccccc;\r
+       padding-bottom: 1em;\r
+       margin-bottom: 1em;     \r
+}\r
+.oauthapp img {\r
+       float: left;\r
+       width: 48px; height: 48px;\r
+       margin: 10px;\r
+}\r
+.oauthapp img.noicon {\r
+       background-image: url("../../../images/icons/48/plugin.png");\r
+       background-position: center center;\r
+       background-repeat: no-repeat;\r
+}\r
+.oauthapp a {\r
+       float: left;\r
+}\r
+\r
+/**\r
+ * ICONS\r
+ */\r
+.iconspacer {\r
+       display: block; width: 16px; height: 16px;\r
+}\r
+\r
+.icon {\r
+       display: block; width: 16px; height: 16px;\r
+       background-image: url('../../../images/icons.png');\r
+}\r
+.article { background-position: 0px 0px;}\r
+.icon.audio { display: none; background-position: -16px 0px;}\r
+.block { background-position: -32px 0px;}\r
+/*.drop { background-position: -48px 0px;}\r
+.drophide { background-position: -64px 0px;}*/\r
+.icon.drop {\r
+       display: block; width: 28px; height: 28px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/drop-darkred.png');\r
+       background-repeat: no-repeat;\r
+}\r
+.icon.drophide {\r
+       display: block; width: 28px; height: 28px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/drop-darkred.png');\r
+       background-repeat: no-repeat;\r
+}\r
+.edit { background-position: -80px 0px;}\r
+/*.camera { background-position: -96px 0px;}*/\r
+.icon.camera {\r
+       display: block; width: 28px; height: 21px;\r
+       margin-top: 4px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/camera.png');\r
+       background-repeat: no-repeat;\r
+}\r
+/*.dislike { background-position: -112px 0px;}*/\r
+.icon.dislike {\r
+       display: block;\r
+       width: 26px; height: 28px;/*31 33*/\r
+       background-size: 100% 100%;\r
+       background-image: url('images/disapprove.png');\r
+       background-repeat: no-repeat;\r
+       opacity: 0.5;\r
+}\r
+/*.like { background-position: -128px 0px;}*/\r
+.icon.like {\r
+       display: block; width: 26px; height: 28px;/*31 33*/\r
+       margin-right: 7px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/approve.png');\r
+       background-repeat: no-repeat;\r
+       opacity: 0.5;\r
+}\r
+.icon.link { display: none; background-position: -144px 0px;}\r
+\r
+/*.globe { background-position: 0px -16px;}*/\r
+.icon.globe {\r
+       display: block; width: 28px; height: 28px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/globe.png');\r
+       background-repeat: no-repeat;\r
+}\r
+.noglobe { background-position: -16px -16px;}\r
+.no { background-position: -32px -16px;}\r
+.pause { background-position: -48px -16px;}\r
+.play { background-position: -64px -16px;}\r
+/*.pencil { background-position: -80px -16px;}\r
+.small-pencil { background-position: -96px -16px;}*/\r
+.icon.pencil {\r
+       display: block; width: 28px; height: 28px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/pencil.png');\r
+       background-repeat: no-repeat;\r
+       opacity: 0.5;\r
+}\r
+.icon.small-pencil {\r
+       display: block; width: 28px; height: 28px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/pencil.png');\r
+       background-repeat: no-repeat;\r
+       opacity: 0.5;\r
+}\r
+/*.recycle { background-position: -112px -16px;}*/\r
+.icon.recycle {\r
+       display: block;\r
+       width: 28px; height: 27px;/*33 32*/\r
+       background-size: 100% 100%;\r
+       background-image: url('images/recycle.png');\r
+       background-repeat: no-repeat;\r
+       opacity: 0.5;\r
+}\r
+/*.remote-link { background-position: -128px -16px;}*/\r
+.icon.remote-link {\r
+/*     display: block;*/\r
+       display: none;\r
+       width: 28px; height: 28px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/remote-link.png');\r
+       background-repeat: no-repeat;\r
+       opacity: 0.5;\r
+}\r
+.share { background-position: -144px -16px;}\r
+\r
+.tools { background-position: 0px -32px;}\r
+/*.lock { background-position: -16px -32px;}*/\r
+.icon.lock {\r
+       display: block; width: 17px; height: 25px;\r
+       margin-top: 1px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/lock.png');\r
+       background-repeat: no-repeat;\r
+}\r
+/*.unlock { background-position: -32px -32px;}*/\r
+.icon.unlock {\r
+       display: block; width: 17px; height: 28px;\r
+       margin-top: -2px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/unlock.png');\r
+       background-repeat: no-repeat;\r
+}\r
+.icon.video { display: none; background-position: -48px -32px;}\r
+.oembed.video a { display: block; }\r
+.youtube { background-position: -64px -32px;}\r
+/*.attach { background-position: -80px -32px; }*/\r
+.icon.attach {\r
+       display: block; width: 28px; height: 28px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/paperclip.png');\r
+       background-repeat: no-repeat;\r
+}\r
+.language { background-position: -96px -32px; }\r
+.prev { background-position: -112px -32px; }\r
+.next { background-position: -128px -32px; }\r
+.on { background-position: -144px -32px; }\r
+\r
+.off { background-position: 0px -48px; }\r
+/*.starred { background-position: -16px -48px; }*/\r
+.icon.starred {\r
+       display: block; width: 28px; height: 28px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/star-yellow.png');\r
+       background-repeat: no-repeat;\r
+}\r
+/*.unstarred { background-position: -32px -48px; }*/\r
+.icon.unstarred {\r
+       display: block; width: 28px; height: 28px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/star.png');\r
+       background-repeat: no-repeat;\r
+       opacity: 0.5;\r
+}\r
+/*.tagged { background-position: -48px -48px; }*/\r
+.icon.tagged {\r
+       display: block; width: 28px; height: 28px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/tag.png');\r
+       background-repeat: no-repeat;\r
+       opacity: 0.5;\r
+}\r
+.yellow { background-position: -64px -48px; }\r
+\r
+\r
+.filer-icon {\r
+       display: block; width: 24px; height: 24px;\r
+       background-size: 100% 100%;\r
+       background-image: url('images/folder.png');\r
+       background-repeat: no-repeat;\r
+       opacity: 0.5;\r
+}\r
+\r
+.icon.dim { opacity: 0.3;filter:alpha(opacity=30); }\r
+\r
+[class^="comment-edit-bb"] {\r
+       list-style: none;\r
+       display: none;\r
+       margin: 0px 0 -5px 20px;\r
+       width: 75%;\r
+}\r
+[class^="comment-edit-bb"] > li {\r
+       display: inline-block;\r
+       margin: 20px 10px 0 0;\r
+       visibility: none;\r
+}\r
+/*[class^="comment-edit-bb-end"] {\r
+       clear: both;\r
+}*/\r
+.editicon {\r
+    display: inline-block;\r
+       background-size: 100% 100%;\r
+       background-repeat: no-repeat;\r
+       background-color: #f3f3f3;\r
+    text-decoration: none;\r
+}\r
+/*.editicon:hover {\r
+       background-color: #ccc;\r
+}*/\r
+.boldbb {\r
+/*     background-position: 0px 0px;*/\r
+       width: 26px; height: 28px;\r
+       background-image: url('images/boldB-serif.png');\r
+}\r
+/*.boldbb:hover {\r
+       background-position: 0px -16px;\r
+}*/\r
+.italicbb {\r
+/*     background-position: -16px 0px;*/\r
+       width: 16px; height: 28px;\r
+       background-image: url('images/italicI-serif.png');\r
+}\r
+/*.italicbb:hover {\r
+       background-position: -16px -16px;\r
+}*/\r
+.underlinebb {\r
+/*     background-position: -32px 0px;*/\r
+       width: 25px; height: 28px;\r
+       background-image: url('images/underlineU-serif.png');\r
+}\r
+/*.underlinebb:hover {\r
+       background-position: -32px -16px;\r
+}*/\r
+.quotebb {\r
+/*     background-position: -48px 0px;*/\r
+       width: 28px; height: 28px;\r
+       background-image: url('images/quote.png');\r
+}\r
+/*.quotebb:hover {\r
+       background-position: -48px -16px;\r
+}*/\r
+.codebb {\r
+/*     background-position: -64px 0px;*/\r
+       width: 28px; height: 28px;\r
+       background-image: url('images/code.png');\r
+}\r
+/*.codebb:hover {\r
+       background-position: -64px -16px;\r
+}*/\r
+.imagebb {\r
+       background-position: -80px 0px;\r
+}\r
+.imagebb:hover {\r
+       background-position: -80px -16px;\r
+}\r
+.urlbb {\r
+       background-position: -96px 0px;\r
+}\r
+.urlbb:hover {\r
+       background-position: -96px -16px;\r
+}\r
+.videobb {\r
+       background-position: -112px 0px;\r
+}\r
+.videobb:hover {\r
+       background-position: -112px -16px;\r
+}\r
+\r
+.attachtype {\r
+       display: block; width: 20px; height: 23px;\r
+       float: left;\r
+       background-image: url('../../../images/content-types.png');\r
+}\r
+\r
+.body-attach {\r
+       margin-top: 10px;\r
+}\r
+\r
+.type-video { background-position: 0px 0px; }\r
+.type-image { background-position: -20px 0px; }\r
+.type-audio { background-position: -40px 0px; }\r
+.type-text  { background-position: -60px 0px; }\r
+.type-unkn  { background-position: -80px 0px; }\r
+\r
+\r
+/* autocomplete popup */\r
+.acpopup {\r
+       max-height:150px;\r
+       background-color:#ffffff;\r
+       overflow:auto;\r
+       z-index:100000;\r
+       border:1px solid #cccccc;\r
+}\r
+.acpopupitem {\r
+       background-color:#ffffff; padding: 4px;\r
+       clear:left;\r
+}\r
+.acpopupitem img {\r
+       float: left;\r
+       margin-right: 4px;\r
+}\r
+\r
+.acpopupitem.selected {\r
+       color: #FFFFFF; background: #3465A4;\r
+}\r
+\r
+/* popup notifications */\r
+div.jGrowl div.notice {\r
+  background: #511919 url("../../../images/icons/48/notice.png") no-repeat 5px center;\r
+  color: #ffffff;\r
+  padding-left: 58px;\r
+}\r
+div.jGrowl div.info {\r
+  background: #364e59 url("../../../images/icons/48/info.png") no-repeat 5px center;\r
+  color: #ffffff;\r
+  padding-left: 58px;\r
+}\r
+#jGrowl.top-right {\r
+       top: 15px;\r
+       right: 15px;\r
+}\r
+.qcomment {\r
+       border: 1px solid #EEE;\r
+       padding: 3px;\r
+       margin-top: 15px;\r
+       margin-left: 25px;\r
+       width: 125px;\r
+       overflow-y: auto;\r
+}\r
+\r
+\r
+.qcomment option {\r
+       width: 125px;\r
+       overflow-x: hidden;\r
+}\r
+\r
+.qcomment {\r
+       opacity: 0.3;\r
+       filter:alpha(opacity=30);\r
+}\r
+.qcomment:hover {\r
+       opacity: 1.0;\r
+       filter:alpha(opacity=100);\r
+}\r
+\r
+/* notifications popup menu */\r
+.nav-notify {\r
+       display: none;\r
+       position: absolute;\r
+       font-size: 10px;\r
+       padding: 1px 3px;\r
+       top: 0px;\r
+       right: -10px;\r
+       min-width: 15px;\r
+       text-align: right;\r
+}\r
+.nav-notify.show {\r
+       display: block;\r
+}\r
+ul.notifications-menu-popup {\r
+       position: absolute;\r
+       display: none;\r
+       width: 10em;\r
+       margin: 0px;\r
+       padding: 0px;\r
+       list-style: none;\r
+       z-index: 100000;\r
+       right: -55px;\r
+}\r
+#nav-notifications-menu {\r
+       width: 300px;\r
+/*     max-height: 400px;*/\r
+       height: auto;\r
+       overflow-y: scroll;overflow-style:scrollbar;\r
+       background-color:#FFFFFF;\r
+/*     -moz-border-radius: 5px;*/\r
+       -webkit-border-radius: 5px;\r
+       border-radius:5px;\r
+       border: 1px solid #AAA;\r
+/*     -moz-box-shadow: 3px 3px 5px #555;*/\r
+       -webkit-box-shadow: 3px 3px 5px #555;\r
+       box-shadow: 3px 3px 5px #555;\r
+}\r
+#nav-notifications-menu .contactname { font-weight: bold; font-size: 0.9em; }\r
+#nav-notifications-menu img { float: left; margin-right: 5px; }\r
+#nav-notifications-menu .notif-when { font-size: 0.8em; display: block; }\r
+#nav-notifications-menu li {\r
+       padding: 7px 0px 7px 10px;\r
+       word-wrap:normal;\r
+       border-bottom: 1px solid #000;\r
+}\r
+\r
+#nav-notifications-menu li:hover {\r
+\r
+}\r
+\r
+#nav-notifications-menu a:hover {\r
+       text-decoration: underline;\r
+}\r
+\r
+.notif-item a {\r
+       color: #000000;\r
+}\r
+\r
+.notif-item a:hover {\r
+       text-decoration: underline;\r
+}\r
+\r
+.notif-image {\r
+       width: 32px;\r
+       height: 32px;\r
+       padding: 7px 7px 0px 0px;\r
+}\r
+\r
+.notify-seen {\r
+       background: #DDDDDD;\r
+}\r
+\r
+#id_term_label {\r
+       width:75px;\r
+}\r
+#id_term {\r
+       width:100px;\r
+}\r
+\r
+#recip {\r
+       \r
+}\r
+.autocomplete-w1 { background: #ffffff; no-repeat bottom right; position:absolute; top:0px; left:0px; margin:6px 0 0 6px; /* IE6 fix: */ _background:none; _margin:1px 0 0 0; }\r
+.autocomplete { color:#000; border:1px solid #999; background:#FFF; cursor:default; text-align:left; max-height:350px; overflow:auto; margin:-6px 6px 6px -6px; /* IE6 specific: */ _height:350px;  _margin:0; _overflow-x:hidden; }\r
+.autocomplete .selected { background:#F0F0F0; }\r
+.autocomplete div { padding:2px 5px; white-space:nowrap; overflow:hidden; }\r
+\r
+#datebrowse-sidebar select {\r
+       margin-left: 40px;\r
+       width: 130px;\r
+}\r
+\r
+/*@media only screen and (min-device-width: 768px)\r
+and (max-device-width: 1024px)*/\r
+/*@media only screen and (min-device-width: 768px)\r
+{\r
+html {\r
+width:700px\r
+}\r
+div.section-wrapper {\r
+width:700px;\r
+margin-left:0px;\r
+}\r
+.wall-item-body {\r
+width:700px;\r
+}\r
+.comment .wall-item-body {\r
+width:650px;\r
+}\r
+}*/\r
+\r
+@media only screen and (min-device-width: 768px)\r
+{\r
+       .wall-item-body code {\r
+               width: 700px;\r
+       }\r
+\r
+       .comment .wall-item-body blockquote {\r
+               margin-left: 20px;\r
+               width: 680px;\r
+       }\r
+       blockquote {\r
+               width: 700px;\r
+       }\r
+\r
+}\r
+\r
index e2cbae29f83709426e3ac39eb26e4105bb9538f0..80cb79c20f53476108b031eff3ce20b63d317a56 100644 (file)
@@ -4,9 +4,9 @@
  * Name: Frost--mobile version
  * Description: Like frosted glass
  * Credits: Navigation icons taken from http://iconza.com. Other icons taken from http://thenounproject.com, including: Like, Dislike, Black Lock, Unlock, Pencil, Tag, Camera, Paperclip (Marie Coons), Folder (Sergio Calcara), Chain-link (Andrew Fortnum), Speaker (Harold Kim), Quotes (Henry Ryder), Video Camera (Anas Ramadan), and Left Arrow, Right Arrow, and Delete X (all three P.J. Onori). All under Attribution (CC BY 3.0). Others from The Noun Project are public domain or No Rights Reserved (CC0).
- * Version: Version 0.2.2
- * Author: Zach P <windforest@f.shmuz.in>
- * Maintainer: Zach P <windforest@f.shmuz.in>
+ * Version: Version 0.2.10
+ * Author: Zach P <techcity@f.shmuz.in>
+ * Maintainer: Zach P <techcity@f.shmuz.in>
  */
 
 $a->theme_info = array();
@@ -22,4 +22,11 @@ function frost_mobile_init(&$a) {
        if( $a->module === 'login' )
                $a->page['end'] .= '<script type="text/javascript"> $j(document).ready(function() { $j("#id_" + window.loginName).focus();} );</script>';
 
+
+       $a->sourcename = 'Friendica mobile web';
+       $a->videowidth = 250;
+       $a->videoheight = 200;
+       $a->theme_thread_allow = false;
+       $a->force_max_items = 10;
+
 }
diff --git a/view/theme/frost-mobile/threaded_conversation.tpl b/view/theme/frost-mobile/threaded_conversation.tpl
new file mode 100644 (file)
index 0000000..6e017ac
--- /dev/null
@@ -0,0 +1,13 @@
+{{ for $threads as $item }}
+{{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+<div id="conversation-end"></div>
+
+<!--{{ if $dropping }}
+<div id="item-delete-selected" class="fakelink" onclick="deleteCheckedItems();">
+  <div id="item-delete-selected-icon" class="icon drophide" title="$dropping" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></div>
+  <div id="item-delete-selected-desc" >$dropping</div>
+</div>
+<div id="item-delete-selected-end"></div>
+{{ endif }}-->
index 1867afe157a6cc2e084c2afe6e0046592de9273d..f75059d9c78ceffcd4b4e87613125c2109d37d06 100644 (file)
@@ -1,6 +1,6 @@
 <a name="$item.id" ></a>
-<!--<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >-->
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<!--<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >-->
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
 <!--                   <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
@@ -25,7 +25,7 @@
                </div>
                <!--<div class="wall-item-author">-->
                                <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a>
-                               <div class="wall-item-ago"  id="wall-item-ago-$item.id">$item.ago</div>
+                               <div class="wall-item-ago" id="wall-item-ago-$item.id" >$item.ago</div>
                                
                <!--</div>-->
                <br />
@@ -78,5 +78,5 @@
        $item.comment
        <!--</div>-->
 
-<!--<div class="wall-item-outside-wrapper-end$item.indent" ></div>-->
+<!--<div class="wall-item-outside-wrapper-end $item.indent" ></div>-->
 <!--</div>-->
diff --git a/view/theme/frost-mobile/wall_thread.tpl b/view/theme/frost-mobile/wall_thread.tpl
new file mode 100644 (file)
index 0000000..d6fb677
--- /dev/null
@@ -0,0 +1,106 @@
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+       <span id="hide-comments-total-$item.id" class="hide-comments-total">$item.num_comments</span> <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span>
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+<div id="tread-wrapper-$item.id" class="tread-wrapper $item.toplevel">
+<a name="$item.id" ></a>
+<!--<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >-->
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
+               <div class="wall-item-info" id="wall-item-info-$item.id">
+<!--                   <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
+                                onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
+                                onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">-->
+                       <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
+                                       <img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" />
+                               </a>
+                               <!--<span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
+                               <div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
+                                       <ul class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
+                                               $item.item_photo_menu
+                                       </ul>
+                               </div>-->
+                       </div>
+                       <!--<div class="wall-item-photo-end"></div>-->
+                       <div class="wall-item-wrapper" id="wall-item-wrapper-$item.id" >
+                               {{ if $item.lock }}<!--<div class="wall-item-lock">--><img src="images/lock_icon.gif" class="wall-item-lock lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /><!--</div>-->
+                               {{ else }}<div class="wall-item-lock"></div>{{ endif }} 
+                               <div class="wall-item-location" id="wall-item-location-$item.id">$item.location</div>                           
+                       </div>
+               </div>
+               <!--<div class="wall-item-author">-->
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a>
+                               <div class="wall-item-ago" id="wall-item-ago-$item.id" >$item.ago</div>
+                               
+               <!--</div>-->
+               <br />
+
+               <div class="wall-item-content" id="wall-item-content-$item.id" >
+                       <div class="wall-item-title" id="wall-item-title-$item.id">$item.title</div>
+                       <!--<div class="wall-item-title-end"></div>-->
+                       <div class="wall-item-body" id="wall-item-body-$item.id" >$item.body
+<!--                                   <div class="body-tag">-->
+                                               {{ for $item.tags as $tag }}
+                                                       <span class='body-tag tag'>$tag</span>
+                                               {{ endfor }}
+<!--                                   </div>-->
+                       </div>
+               </div>
+               <div class="wall-item-tools" id="wall-item-tools-$item.id">
+                       {{ if $item.vote }}
+                       <div class="wall-item-like-buttons" id="wall-item-like-buttons-$item.id">
+                               <a href="#" class="icon like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false"></a>
+                               <a href="#" class="icon dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
+                               {{ if $item.vote.share }}<a href="#" class="icon recycle wall-item-share-buttons" title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>{{ endif }}
+                               <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+                       </div>
+                       {{ endif }}
+                       {{ if $item.plink }}
+                               <!--<div class="wall-item-links-wrapper"><a href="$item.plink.href" title="$item.plink.title" target="external-link" class="wall-item-links-wrapper icon remote-link$item.sparkle"></a></div>-->
+                       {{ endif }}
+                       {{ if $item.edpost }}
+                               <a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
+                       {{ endif }}
+                        
+                       {{ if $item.star }}
+                       <a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item icon $item.isstarred" title="$item.star.toggle"></a>
+                       <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item icon tagged" title="$item.star.tagger"></a>
+                       {{ endif }}
+                       {{ if $item.filer }}
+                       <a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item filer-icon" title="$item.filer"></a>
+                       {{ endif }}     
+<!--                   <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$item.id" >-->
+                               {{ if $item.drop.dropping }}<a href="item/drop/$item.id" onclick="return confirmDelete();" class="wall-item-delete-wrapper icon drophide" title="$item.drop.delete" id="wall-item-delete-wrapper-$item.id" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
+<!--                   </div>-->
+                               {{ if $item.drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$item.drop.select" class="item-select" name="itemselected[]" value="$item.id" />{{ endif }}
+                       <!--<div class="wall-item-delete-end"></div>-->
+               </div>
+       </div>
+       <!--<div class="wall-item-wrapper-end"></div>-->
+       <div class="wall-item-like $item.indent" id="wall-item-like-$item.id">$item.like</div>
+       <div class="wall-item-dislike $item.indent" id="wall-item-dislike-$item.id">$item.dislike</div>
+
+       {{ if $item.threaded }}
+       {{ if $item.comment }}
+       <!--<div class="wall-item-comment-wrapper $item.indent" >-->
+               $item.comment
+       <!--</div>-->
+       {{ endif }}
+       {{ endif }}
+
+<!--<div class="wall-item-outside-wrapper-end $item.indent" ></div>-->
+<!--</div>-->
+{{ for $item.children as $item }}
+       {{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+{{ if $item.flatten }}
+<!--<div class="wall-item-comment-wrapper" >-->
+       $item.comment
+<!--</div>-->
+{{ endif }}
+</div>
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
+
index 113987246c93bb47dd51c817a339fc38a5acb30e..9affbcebae65aeb91af841d266eceef8cf11548f 100644 (file)
@@ -1,6 +1,6 @@
 <a name="$item.id" ></a>
-<!--<div class="wall-item-outside-wrapper$item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >-->
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<!--<div class="wall-item-outside-wrapper $item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >-->
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info wallwall" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
                                <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
                     <ul class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
                         $item.item_photo_menu
                     </ul>
-<!--                </div>-->
+                </div>-->
 
                        </div>
                        <!--<div class="wall-item-photo-end"></div>-->
                        <div class="wall-item-wrapper" id="wall-item-wrapper-$item.id" >
-                               {{ if $item.lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /></div>
+                               {{ if $item.lock }}<!--<div class="wall-item-lock">--><img src="images/lock_icon.gif" class="wall-item-lock lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /><!--</div>-->
                                {{ else }}<div class="wall-item-lock"></div>{{ endif }} 
                                <div class="wall-item-location" id="wall-item-location-$item.id">$item.location</div>
                        </div>
@@ -68,7 +68,7 @@
                        {{ endif }}                     
                        
                        <!--<div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$item.id" >-->
-                               {{ if $item.drop.dropping }}<a href="item/drop/$item.id" onclick="return confirmDelete();" class="wall-item-delete-wrapper icon drophide" title="$item.drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
+                               {{ if $item.drop.dropping }}<a href="item/drop/$item.id" onclick="return confirmDelete();" class="wall-item-delete-wrapper icon drophide" title="$item.drop.delete" id="wall-item-delete-wrapper-$item.id" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
                        <!--</div>-->
                                {{ if $item.drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$item.drop.select" class="item-select" name="itemselected[]" value="$item.id" />{{ endif }}
                        <!--<div class="wall-item-delete-end"></div>-->
@@ -82,6 +82,6 @@
        $item.comment
        <!--</div>-->
 
-<!--<div class="wall-item-outside-wrapper-end$item.indent" ></div>-->
+<!--<div class="wall-item-outside-wrapper-end $item.indent" ></div>-->
 <!--</div>-->
 
diff --git a/view/theme/frost-mobile/wallwall_thread.tpl b/view/theme/frost-mobile/wallwall_thread.tpl
new file mode 100644 (file)
index 0000000..3af6aaa
--- /dev/null
@@ -0,0 +1,109 @@
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+       <span id="hide-comments-total-$item.id" class="hide-comments-total">$item.num_comments</span> <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span>
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+<div id="tread-wrapper-$item.id" class="tread-wrapper $item.toplevel">
+<a name="$item.id" ></a>
+<!--<div class="wall-item-outside-wrapper $item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >-->
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
+               <div class="wall-item-info wallwall" id="wall-item-info-$item.id">
+                       <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
+                               <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
+                               <img src="$item.owner_photo" class="wall-item-photo$item.osparkle" id="wall-item-ownerphoto-$item.id" style="height: 80px; width: 80px;" alt="$item.owner_name" /></a>
+                       </div>
+                       <div class="wall-item-arrowphoto-wrapper" ><img src="images/larrow.gif" alt="$item.wall" /></div>
+                       <!--<div class="wall-item-photo-wrapper wwfrom" id="wall-item-photo-wrapper-$item.id" 
+                               onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')"
+                onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">-->
+                       <div class="wall-item-photo-wrapper wwfrom" id="wall-item-photo-wrapper-$item.id">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
+                               <img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" /></a>
+                               <!--<span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
+                <div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
+                    <ul class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
+                        $item.item_photo_menu
+                    </ul>
+                </div>-->
+
+                       </div>
+                       <!--<div class="wall-item-photo-end"></div>-->
+                       <div class="wall-item-wrapper" id="wall-item-wrapper-$item.id" >
+                               {{ if $item.lock }}<!--<div class="wall-item-lock">--><img src="images/lock_icon.gif" class="wall-item-lock lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /><!--</div>-->
+                               {{ else }}<div class="wall-item-lock"></div>{{ endif }} 
+                               <div class="wall-item-location" id="wall-item-location-$item.id">$item.location</div>
+                       </div>
+               </div>
+               <!--<div class="wall-item-author">-->
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a> $item.to <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-name-link"><span class="wall-item-name$item.osparkle" id="wall-item-ownername-$item.id">$item.owner_name</span></a> $item.vwall<br />
+                               <div class="wall-item-ago"  id="wall-item-ago-$item.id">$item.ago</div>                         
+               <!--</div>-->
+               <div class="wall-item-content" id="wall-item-content-$item.id" >
+                       <div class="wall-item-title" id="wall-item-title-$item.id">$item.title</div>
+                       <!--<div class="wall-item-title-end"></div>-->
+                       <div class="wall-item-body" id="wall-item-body-$item.id" >$item.body
+                                       <!--<div class="body-tag">-->
+                                               {{ for $item.tags as $tag }}
+                                                       <span class='body-tag tag'>$tag</span>
+                                               {{ endfor }}
+                                       <!--</div>-->
+                       </div>
+               </div>
+               <div class="wall-item-tools" id="wall-item-tools-$item.id">
+                       {{ if $item.vote }}
+                       <div class="wall-item-like-buttons" id="wall-item-like-buttons-$item.id">
+                               <a href="#" class="icon like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false"></a>
+                               <a href="#" class="icon dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
+                               {{ if $item.vote.share }}<a href="#" class="icon recycle wall-item-share-buttons" title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>{{ endif }}
+                               <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+                       </div>
+                       {{ endif }}
+                       {{ if $item.plink }}
+                               <!--<div class="wall-item-links-wrapper">--><a href="$item.plink.href" title="$item.plink.title" target="external-link" class="wall-item-links-wrapper icon remote-link$item.sparkle"></a><!--</div>-->
+                       {{ endif }}
+                       {{ if $item.edpost }}
+                               <a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
+                       {{ endif }}
+                        
+                       {{ if $item.star }}
+                       <a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item icon $item.isstarred" title="$item.star.toggle"></a>
+                       <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item icon tagged" title="$item.star.tagger"></a>
+                       {{ endif }}
+                       {{ if $item.filer }}
+                       <a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item filer-icon" title="$item.filer"></a>
+                       {{ endif }}                     
+                       
+                       <!--<div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$item.id" >-->
+                               {{ if $item.drop.dropping }}<a href="item/drop/$item.id" onclick="return confirmDelete();" class="wall-item-delete-wrapper icon drophide" title="$item.drop.delete" id="wall-item-delete-wrapper-$item.id" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
+                       <!--</div>-->
+                               {{ if $item.drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$item.drop.select" class="item-select" name="itemselected[]" value="$item.id" />{{ endif }}
+                       <!--<div class="wall-item-delete-end"></div>-->
+               </div>
+       </div>  
+       <!--<div class="wall-item-wrapper-end"></div>-->
+       <div class="wall-item-like $item.indent" id="wall-item-like-$item.id">$item.like</div>
+       <div class="wall-item-dislike $item.indent" id="wall-item-dislike-$item.id">$item.dislike</div>
+
+       {{ if $item.threaded }}
+       {{ if $item.comment }}
+       <!--<div class="wall-item-comment-wrapper $item.indent" >-->
+               $item.comment
+       <!--</div>-->
+       {{ endif }}
+       {{ endif }}
+
+<!--<div class="wall-item-outside-wrapper-end $item.indent" ></div>-->
+<!--</div>-->
+{{ for $item.children as $item }}
+       {{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+{{ if $item.flatten }}
+<!--<div class="wall-item-comment-wrapper" >-->
+       $item.comment
+<!--</div>-->
+{{ endif }}
+</div>
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
+
index 930de8f6f7543ccce50fa96e1f067710eaf4184a..1378e5d4689c1138f3bd2b9736f9e58560e38562 100644 (file)
@@ -6,4 +6,9 @@ Check TinyMCE optimization
 "Profiles" page is wonky
 Settings, admin, photos upload don't look beautiful
 
-
+Threading:
+       - indentation
+       - top-level "show more" looks bad
+       - need some visual way to tie sub-comments to their parent comments
+       - need a way to change styles if the system allows threading or not
+       - just don't allow?
index bb00c2cccff79ef526648f7e6bbf8821b6003a26..91aeda035792e5c1f40aa40372a5448a6e6f1b0b 100644 (file)
@@ -9,6 +9,7 @@
        {{ inc field_textarea.tpl with $field=$banner }}{{ endinc }}
        {{ inc field_select.tpl with $field=$language }}{{ endinc }}
        {{ inc field_select.tpl with $field=$theme }}{{ endinc }}
+       {{ inc field_select.tpl with $field=$theme_mobile }}{{ endinc }}
        {{ inc field_select.tpl with $field=$ssl_policy }}{{ endinc }}
        
        <div class="submit"><input type="submit" name="page_site" value="$submit" /></div>
@@ -25,6 +26,8 @@
 
        <h3>$upload</h3>
        {{ inc field_input.tpl with $field=$maximagesize }}{{ endinc }}
+       {{ inc field_input.tpl with $field=$maximagelength }}{{ endinc }}
+       {{ inc field_input.tpl with $field=$jpegimagequality }}{{ endinc }}
        
        <h3>$corporate</h3>
        {{ inc field_input.tpl with $field=$allowed_sites }}{{ endinc }}
@@ -36,6 +39,8 @@
        {{ inc field_checkbox.tpl with $field=$diaspora_enabled }}{{ endinc }}
        {{ inc field_checkbox.tpl with $field=$dfrn_only }}{{ endinc }}
        {{ inc field_input.tpl with $field=$global_directory }}{{ endinc }}
+       {{ inc field_checkbox.tpl with $field=$thread_allow }}{{ endinc }}
+       {{ inc field_checkbox.tpl with $field=$newuser_public }}{{ endinc }}
        
        <div class="submit"><input type="submit" name="page_site" value="$submit" /></div>
        
index bdc2ef5e6db3b2f04de5a5c0f511e71ea9cbef51..32d4d78ef9698b6250dc6a06f72d5e61c890875e 100755 (executable)
                });
                </script>-->
 
-               <div class="comment-wwedit-wrapper" id="comment-edit-wrapper-$id" style="display: block;">
+               <div class="comment-wwedit-wrapper $indent" id="comment-edit-wrapper-$id" style="display: block;">
                        <form class="comment-edit-form" id="comment-edit-form-$id" action="item" method="post" onsubmit="post_comment($id); return false;">
+<!--                   <span id="hide-commentbox-$id" class="hide-commentbox fakelink" onclick="showHideCommentBox($id);">$comment</span>
+                       <form class="comment-edit-form" style="display: none;" id="comment-edit-form-$id" action="item" method="post" onsubmit="post_comment($id); return false;">-->
                                <input type="hidden" name="type" value="$type" />
                                <input type="hidden" name="profile_uid" value="$profile_uid" />
                                <input type="hidden" name="parent" value="$parent" />
@@ -23,7 +25,7 @@
                                        <a class="comment-edit-photo comment-edit-photo-link" id="comment-edit-photo-$id" href="$mylink" title="$mytitle"><img class="my-comment-photo" src="$myphoto" alt="$mytitle" title="$mytitle" /></a>
 <!--                           </div>-->
                                <!--<div class="comment-edit-photo-end"></div>-->
-                               <ul class="comment-edit-bb-$id">
+                               <ul class="comment-edit-bb" id="comment-edit-bb-$id">
                                        <li><a class="editicon boldbb shadow"
                                                style="cursor: pointer;" title="$edbold"
                                                onclick="insertFormatting('$comment','b', $id);"></a></li>
diff --git a/view/theme/frost/conversation.tpl b/view/theme/frost/conversation.tpl
deleted file mode 100644 (file)
index fccd9a8..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-{{ for $threads as $thread }}
-<div id="tread-wrapper-$thread.id" class="tread-wrapper">
-       {{ for $thread.items as $item }}
-               {{if $item.comment_firstcollapsed}}
-                       <div class="hide-comments-outer">
-                       <span id="hide-comments-total-$thread.id" class="hide-comments-total">$thread.num_comments</span> <span id="hide-comments-$thread.id" class="hide-comments fakelink" onclick="showHideComments($thread.id);">$thread.hide_text</span>
-                       </div>
-                       <div id="collapsed-comments-$thread.id" class="collapsed-comments" style="display: none;">
-               {{endif}}
-               {{if $item.comment_lastcollapsed}}</div>{{endif}}
-               
-               {{ inc $item.template }}{{ endinc }}
-               
-               
-       {{ endfor }}
-</div>
-{{ endfor }}
-
-<div id="conversation-end"></div>
-
-{{ if $dropping }}
-<div id="item-delete-selected" class="fakelink" onclick="deleteCheckedItems();">
-  <div id="item-delete-selected-icon" class="icon drophide" title="$dropping" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></div>
-  <div id="item-delete-selected-desc" >$dropping</div>
-</div>
-<div id="item-delete-selected-end"></div>
-{{ endif }}
index 9f764c73ef06e0eb78889093042c79c8b5672777..aa032524f8484aaeb803ba9ec8bf279fcd023e81 100644 (file)
@@ -6,23 +6,23 @@
   <?php if(x($page,'htmlhead')) echo $page['htmlhead'] ?>\r
 </head>\r
 <body>\r
+       <?php if(x($page,'nav')) echo $page['nav']; ?>\r
+\r
        <?php if( $a->module === 'home' ) { ?>\r
        <center>\r
        <div class="login-button">\r
        <a href="login" class="login-button-link"><img class="login-button-image" src="/images/friendika-1600.png" title="Click to log in"></a>\r
        </div>\r
        </center>\r
+\r
        <?php } elseif ( $a->module === 'login' || $a->module === 'register' || $a->module === 'lostpass' ) {\r
        ?>\r
-\r
        <div class='section-wrapper'>\r
        <section><?php if(x($page,'content')) echo $page['content']; ?>\r
        </section>\r
        </div>\r
 \r
-       <?php } else {\r
-\r
-       if(x($page,'nav')) echo $page['nav']; ?>\r
+       <?php } else { ?>\r
        <div class='main-container'>\r
                <!--<div class='main-content-loading'><img src="/view/theme/frost/images/ajax-loader.gif" alt="Please wait..."></div>-->\r
                <div class='main-content-container'>\r
index 01928ce800d26e49d0adeafcceb31604407e4473..84004c8e4900be13951ecc83635882e81cf3b12d 100644 (file)
@@ -7,6 +7,7 @@
 </script>
 <script type="text/javascript" src="$baseurl/js/jquery.js" ></script>
 <script type="text/javascript">var $j = jQuery.noConflict();</script>
+<script type="text/javascript" src="$baseurl/view/theme/frost/js/jquery.divgrow-1.3.1.min.js" ></script>
 <script type="text/javascript" src="$baseurl/js/jquery.textinputs.js" ></script>
 <script type="text/javascript" src="$baseurl/view/theme/frost/js/fk.autocomplete.min.js" ></script>
 <script type="text/javascript" src="$baseurl/library/fancybox/jquery.fancybox-1.3.4.pack.js"></script>
diff --git a/view/theme/frost/experimental b/view/theme/frost/experimental
deleted file mode 100644 (file)
index e69de29..0000000
index 2ea559636ba41bdd2f8ab7d4da42bad19172328e..9675588af238a57d6cd65220425c49a0420072ac 100644 (file)
@@ -11,7 +11,7 @@ function ACL(backend_url, preset){
        that.deny_cid  = (preset[2] || []);
        that.deny_gid  = (preset[3] || []);
        that.group_uids = [];
-       that.nw = 4; //items per row. should be calulated from #acl-list.width
+       that.nw = 3; //items per row. should be calulated from #acl-list.width
        
        that.list_content = $j("#acl-list-content");
        that.item_tpl = unescape($j(".acl-list-item[rel=acl-template]").html());
index 6a3518d9daddecc6783d2757f1286634ced8ba27..fe69e51899c3244c34bb9eccf3d62b0e01297a44 100644 (file)
@@ -1 +1 @@
-function ACL(e,t){that=this,that.url=e,that.kp_timer=null,t==undefined&&(t=[]),that.allow_cid=t[0]||[],that.allow_gid=t[1]||[],that.deny_cid=t[2]||[],that.deny_gid=t[3]||[],that.group_uids=[],that.nw=4,that.list_content=$j("#acl-list-content"),that.item_tpl=unescape($j(".acl-list-item[rel=acl-template]").html()),that.showall=$j("#acl-showall"),t.length==0&&that.showall.addClass("selected"),that.showall.click(that.on_showall),$j(".acl-button-show").live("click",that.on_button_show),$j(".acl-button-hide").live("click",that.on_button_hide),$j("#acl-search").keypress(that.on_search),$j("#acl-wrapper").parents("form").submit(that.on_submit),that.get(0,100)}ACL.prototype.on_submit=function(){aclfileds=$j("#acl-fields").html(""),$j(that.allow_gid).each(function(e,t){aclfileds.append("<input type='hidden' name='group_allow[]' value='"+t+"'>")}),$j(that.allow_cid).each(function(e,t){aclfileds.append("<input type='hidden' name='contact_allow[]' value='"+t+"'>")}),$j(that.deny_gid).each(function(e,t){aclfileds.append("<input type='hidden' name='group_deny[]' value='"+t+"'>")}),$j(that.deny_cid).each(function(e,t){aclfileds.append("<input type='hidden' name='contact_deny[]' value='"+t+"'>")})},ACL.prototype.search=function(){var e=$j("#acl-search").val();that.list_content.html(""),that.get(0,100,e)},ACL.prototype.on_search=function(e){that.kp_timer&&clearTimeout(that.kp_timer),that.kp_timer=setTimeout(that.search,1e3)},ACL.prototype.on_showall=function(e){return e.preventDefault(),e.stopPropagation(),that.showall.hasClass("selected")?!1:(that.showall.addClass("selected"),that.allow_cid=[],that.allow_gid=[],that.deny_cid=[],that.deny_gid=[],that.update_view(),!1)},ACL.prototype.on_button_show=function(e){return e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),that.set_allow($j(this).parent().attr("id")),!1},ACL.prototype.on_button_hide=function(e){return e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),that.set_deny($j(this).parent().attr("id")),!1},ACL.prototype.set_allow=function(e){type=e[0],id=parseInt(e.substr(1));switch(type){case"g":that.allow_gid.indexOf(id)<0?that.allow_gid.push(id):that.allow_gid.remove(id),that.deny_gid.indexOf(id)>=0&&that.deny_gid.remove(id);break;case"c":that.allow_cid.indexOf(id)<0?that.allow_cid.push(id):that.allow_cid.remove(id),that.deny_cid.indexOf(id)>=0&&that.deny_cid.remove(id)}that.update_view()},ACL.prototype.set_deny=function(e){type=e[0],id=parseInt(e.substr(1));switch(type){case"g":that.deny_gid.indexOf(id)<0?that.deny_gid.push(id):that.deny_gid.remove(id),that.allow_gid.indexOf(id)>=0&&that.allow_gid.remove(id);break;case"c":that.deny_cid.indexOf(id)<0?that.deny_cid.push(id):that.deny_cid.remove(id),that.allow_cid.indexOf(id)>=0&&that.allow_cid.remove(id)}that.update_view()},ACL.prototype.update_view=function(){that.allow_gid.length==0&&that.allow_cid.length==0&&that.deny_gid.length==0&&that.deny_cid.length==0?(that.showall.addClass("selected"),$j("#jot-perms-icon").removeClass("lock").addClass("unlock"),$j("#jot-public").show(),$j(".profile-jot-net input").attr("disabled",!1),typeof editor!="undefined"&&editor!=0&&$j("#profile-jot-desc").html(ispublic)):(that.showall.removeClass("selected"),$j("#jot-perms-icon").removeClass("unlock").addClass("lock"),$j("#jot-public").hide(),$j(".profile-jot-net input").attr("disabled","disabled"),$j("#profile-jot-desc").html("&nbsp;")),$j("#acl-list-content .acl-list-item").each(function(){$j(this).removeClass("groupshow grouphide")}),$j("#acl-list-content .acl-list-item").each(function(){itemid=$j(this).attr("id"),type=itemid[0],id=parseInt(itemid.substr(1)),btshow=$j(this).children(".acl-button-show").removeClass("selected"),bthide=$j(this).children(".acl-button-hide").removeClass("selected");switch(type){case"g":var e="";that.allow_gid.indexOf(id)>=0&&(btshow.addClass("selected"),bthide.removeClass("selected"),e="groupshow"),that.deny_gid.indexOf(id)>=0&&(btshow.removeClass("selected"),bthide.addClass("selected"),e="grouphide"),$j(that.group_uids[id]).each(function(t,n){e=="grouphide"&&$j("#c"+n).removeClass("groupshow");if(e!=""){var r=$j("#c"+n).attr("class");if(r==undefined)return!0;var i=r.indexOf("grouphide");i==-1&&$j("#c"+n).addClass(e)}});break;case"c":that.allow_cid.indexOf(id)>=0&&(btshow.addClass("selected"),bthide.removeClass("selected")),that.deny_cid.indexOf(id)>=0&&(btshow.removeClass("selected"),bthide.addClass("selected"))}})},ACL.prototype.get=function(e,t,n){var r={start:e,count:t,search:n};$j.ajax({type:"POST",url:that.url,data:r,dataType:"json",success:that.populate})},ACL.prototype.populate=function(e){var t=Math.ceil(e.tot/that.nw)*42;that.list_content.height(t),$j(e.items).each(function(){html="<div class='acl-list-item {4} {5}' title='{6}' id='{2}{3}'>"+that.item_tpl+"</div>",html=html.format(this.photo,this.name,this.type,this.id,"",this.network,this.link),this.uids!=undefined&&(that.group_uids[this.id]=this.uids),that.list_content.append(html)}),that.update_view()};
\ No newline at end of file
+function ACL(e,t){that=this,that.url=e,that.kp_timer=null,t==undefined&&(t=[]),that.allow_cid=t[0]||[],that.allow_gid=t[1]||[],that.deny_cid=t[2]||[],that.deny_gid=t[3]||[],that.group_uids=[],that.nw=3,that.list_content=$j("#acl-list-content"),that.item_tpl=unescape($j(".acl-list-item[rel=acl-template]").html()),that.showall=$j("#acl-showall"),t.length==0&&that.showall.addClass("selected"),that.showall.click(that.on_showall),$j(".acl-button-show").live("click",that.on_button_show),$j(".acl-button-hide").live("click",that.on_button_hide),$j("#acl-search").keypress(that.on_search),$j("#acl-wrapper").parents("form").submit(that.on_submit),that.get(0,100)}ACL.prototype.on_submit=function(){aclfileds=$j("#acl-fields").html(""),$j(that.allow_gid).each(function(e,t){aclfileds.append("<input type='hidden' name='group_allow[]' value='"+t+"'>")}),$j(that.allow_cid).each(function(e,t){aclfileds.append("<input type='hidden' name='contact_allow[]' value='"+t+"'>")}),$j(that.deny_gid).each(function(e,t){aclfileds.append("<input type='hidden' name='group_deny[]' value='"+t+"'>")}),$j(that.deny_cid).each(function(e,t){aclfileds.append("<input type='hidden' name='contact_deny[]' value='"+t+"'>")})},ACL.prototype.search=function(){var e=$j("#acl-search").val();that.list_content.html(""),that.get(0,100,e)},ACL.prototype.on_search=function(e){that.kp_timer&&clearTimeout(that.kp_timer),that.kp_timer=setTimeout(that.search,1e3)},ACL.prototype.on_showall=function(e){return e.preventDefault(),e.stopPropagation(),that.showall.hasClass("selected")?!1:(that.showall.addClass("selected"),that.allow_cid=[],that.allow_gid=[],that.deny_cid=[],that.deny_gid=[],that.update_view(),!1)},ACL.prototype.on_button_show=function(e){return e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),that.set_allow($j(this).parent().attr("id")),!1},ACL.prototype.on_button_hide=function(e){return e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),that.set_deny($j(this).parent().attr("id")),!1},ACL.prototype.set_allow=function(e){type=e[0],id=parseInt(e.substr(1));switch(type){case"g":that.allow_gid.indexOf(id)<0?that.allow_gid.push(id):that.allow_gid.remove(id),that.deny_gid.indexOf(id)>=0&&that.deny_gid.remove(id);break;case"c":that.allow_cid.indexOf(id)<0?that.allow_cid.push(id):that.allow_cid.remove(id),that.deny_cid.indexOf(id)>=0&&that.deny_cid.remove(id)}that.update_view()},ACL.prototype.set_deny=function(e){type=e[0],id=parseInt(e.substr(1));switch(type){case"g":that.deny_gid.indexOf(id)<0?that.deny_gid.push(id):that.deny_gid.remove(id),that.allow_gid.indexOf(id)>=0&&that.allow_gid.remove(id);break;case"c":that.deny_cid.indexOf(id)<0?that.deny_cid.push(id):that.deny_cid.remove(id),that.allow_cid.indexOf(id)>=0&&that.allow_cid.remove(id)}that.update_view()},ACL.prototype.update_view=function(){that.allow_gid.length==0&&that.allow_cid.length==0&&that.deny_gid.length==0&&that.deny_cid.length==0?(that.showall.addClass("selected"),$j("#jot-perms-icon").removeClass("lock").addClass("unlock"),$j("#jot-public").show(),$j(".profile-jot-net input").attr("disabled",!1),typeof editor!="undefined"&&editor!=0&&$j("#profile-jot-desc").html(ispublic)):(that.showall.removeClass("selected"),$j("#jot-perms-icon").removeClass("unlock").addClass("lock"),$j("#jot-public").hide(),$j(".profile-jot-net input").attr("disabled","disabled"),$j("#profile-jot-desc").html("&nbsp;")),$j("#acl-list-content .acl-list-item").each(function(){$j(this).removeClass("groupshow grouphide")}),$j("#acl-list-content .acl-list-item").each(function(){itemid=$j(this).attr("id"),type=itemid[0],id=parseInt(itemid.substr(1)),btshow=$j(this).children(".acl-button-show").removeClass("selected"),bthide=$j(this).children(".acl-button-hide").removeClass("selected");switch(type){case"g":var e="";that.allow_gid.indexOf(id)>=0&&(btshow.addClass("selected"),bthide.removeClass("selected"),e="groupshow"),that.deny_gid.indexOf(id)>=0&&(btshow.removeClass("selected"),bthide.addClass("selected"),e="grouphide"),$j(that.group_uids[id]).each(function(t,n){e=="grouphide"&&$j("#c"+n).removeClass("groupshow");if(e!=""){var r=$j("#c"+n).attr("class");if(r==undefined)return!0;var i=r.indexOf("grouphide");i==-1&&$j("#c"+n).addClass(e)}});break;case"c":that.allow_cid.indexOf(id)>=0&&(btshow.addClass("selected"),bthide.removeClass("selected")),that.deny_cid.indexOf(id)>=0&&(btshow.removeClass("selected"),bthide.addClass("selected"))}})},ACL.prototype.get=function(e,t,n){var r={start:e,count:t,search:n};$j.ajax({type:"POST",url:that.url,data:r,dataType:"json",success:that.populate})},ACL.prototype.populate=function(e){var t=Math.ceil(e.tot/that.nw)*42;that.list_content.height(t),$j(e.items).each(function(){html="<div class='acl-list-item {4} {5}' title='{6}' id='{2}{3}'>"+that.item_tpl+"</div>",html=html.format(this.photo,this.name,this.type,this.id,"",this.network,this.link),this.uids!=undefined&&(that.group_uids[this.id]=this.uids),that.list_content.append(html)}),that.update_view()};
\ No newline at end of file
diff --git a/view/theme/frost/js/jquery.divgrow-1.3.1.min.js b/view/theme/frost/js/jquery.divgrow-1.3.1.min.js
new file mode 100644 (file)
index 0000000..fd08f7f
--- /dev/null
@@ -0,0 +1 @@
+(function ($) { var divgrowid = 0; $.fn.divgrow = function (options) { var options = $.extend({}, { initialHeight: 100, moreText: "+ Show More", lessText: "- Show Less", speed: 1000, showBrackets: true }, options); return this.each(function () { divgrowid++; obj = $(this); var fullHeight = obj.height() + 10; obj.css('height', options.initialHeight).css('overflow', 'hidden'); if (options.showBrackets) { obj.after('<p class="divgrow-brackets">[&hellip;]</p><a href="#" class="divgrow-showmore' + " divgrow-obj-" + divgrowid + '"' + '></a>') } else { obj.after('<a href="#" class="divgrow-showmore' + " divgrow-obj-" + divgrowid + '"' + '></a>') } $("a.divgrow-showmore").html(options.moreText); $("." + "divgrow-obj-" + divgrowid).toggle(function () { $(this).prevAll("div:first").animate({ height: fullHeight + "px" }, options.speed, function () { if (options.showBrackets) { $(this).nextAll("p.divgrow-brackets:first").fadeOut() } $(this).nextAll("a.divgrow-showmore:first").html(options.lessText) }) }, function () { $(this).prevAll("div:first").stop(true, false).animate({ height: options.initialHeight }, options.speed, function () { if (options.showBrackets) { $(this).nextAll("p.divgrow-brackets:first").stop(true, false).fadeIn() } $(this).nextAll("a.divgrow-showmore:first").stop(true, false).html(options.moreText) }) }) }) } })(jQuery);
\ No newline at end of file
index d4741bc6ec9e9e3c89a6b170d8448a19346bec6c..0aea9bc85322a6f6096c7f38248915e9c3f88294 100644 (file)
 
                        // add a new thread
 
-                       $j('.tread-wrapper',data).each(function() {
+                       $j('.toplevel_item',data).each(function() {
                                var ident = $j(this).attr('id');
 
                                if($j('#' + ident).length == 0 && profile_page == 1) {
                        }
                        /* autocomplete @nicknames */
                        $j(".comment-edit-form  textarea").contact_autocomplete(baseurl+"/acl");
+
+                       var bimgs = $j(".wall-item-body > img").not(function() { return this.complete; });
+                       var bimgcount = bimgs.length;
+
+                       if (bimgcount) {
+                               bimgs.load(function() {
+                                       bimgcount--;
+                                       if (! bimgcount) {
+                                               collapseHeight();
+
+                                       }
+                               });
+                       } else {
+                               collapseHeight();
+                       }
+
+               });
+       }
+
+       function collapseHeight() {
+               $j(".wall-item-body").each(function() {
+                               if($j(this).height() > 410) {
+                               if(! $j(this).hasClass('divmore')) {
+                                       $j(this).divgrow({ initialHeight: 400, showBrackets: false, speed: 300 });
+                                       $j(this).addClass('divmore');
+                               }
+                       }                                       
                });
        }
 
index 0713d1a5ceb8481622e67ea995d7633cedfa4e1b..ec3243df8dc6e9ccbb5ac396537d120486bbe577 100644 (file)
@@ -1 +1 @@
-function openClose(e){document.getElementById(e).style.display=="block"?document.getElementById(e).style.display="none":document.getElementById(e).style.display="block"}function openMenu(e){document.getElementById(e).style.display="block"}function closeMenu(e){document.getElementById(e).style.display="none"}function NavUpdate(){if(!stopped){var e="ping"+(localUser!=0?"?f=&uid="+localUser:"");$j.get(e,function(e){$j(e).find("result").each(function(){$j("nav").trigger("nav-update",this),$j("#live-network").length&&(src="network",liveUpdate()),$j("#live-profile").length&&(src="profile",liveUpdate()),$j("#live-community").length&&(src="community",liveUpdate()),$j("#live-notes").length&&(src="notes",liveUpdate()),$j("#live-display").length&&liking&&(liking=0,window.location.href=window.location.href),$j("#live-photos").length&&liking&&(liking=0,window.location.href=window.location.href)})})}timer=setTimeout(NavUpdate,updateInterval)}function liveUpdate(){if(src==null||stopped||!profile_uid){$j(".like-rotator").hide();return}if($j(".comment-edit-text-full").length||in_progress){livetime&&clearTimeout(livetime),livetime=setTimeout(liveUpdate,1e4);return}livetime!=null&&(livetime=null),prev="live-"+src,in_progress=!0;var e=netargs.length?"/"+netargs:"",t="update_"+src+e+"&p="+profile_uid+"&page="+profile_page+"&msie="+(msie?1:0);$j.get(t,function(e){in_progress=!1,$j(".tread-wrapper",e).each(function(){var e=$j(this).attr("id");$j("#"+e).length==0&&profile_page==1?($j("img",this).each(function(){$j(this).attr("src",$j(this).attr("dst"))}),$j("#"+prev).after($j(this))):($j("img",this).each(function(){$j(this).attr("src",$j(this).attr("dst"))}),$j("#"+e).replaceWith($j(this))),prev=e}),$j(".like-rotator").hide(),commentBusy&&(commentBusy=!1,$j("body").css("cursor","auto")),$j(".comment-edit-form  textarea").contact_autocomplete(baseurl+"/acl")})}function imgbright(e){$j(e).removeClass("drophide").addClass("drop")}function imgdull(e){$j(e).removeClass("drop").addClass("drophide")}function dolike(e,t){unpause(),$j("#like-rotator-"+e.toString()).show(),$j.get("like/"+e.toString()+"?verb="+t,NavUpdate),liking=1}function dostar(e){e=e.toString(),$j.get("starred/"+e,function(t){t.match(/1/)?($j("#starred-"+e).addClass("starred"),$j("#starred-"+e).removeClass("unstarred"),$j("#star-"+e).addClass("hidden"),$j("#unstar-"+e).removeClass("hidden")):($j("#starred-"+e).addClass("unstarred"),$j("#starred-"+e).removeClass("starred"),$j("#star-"+e).removeClass("hidden"),$j("#unstar-"+e).addClass("hidden"))})}function getPosition(e){var t={x:0,y:0};if(e.pageX||e.pageY)t.x=e.pageX,t.y=e.pageY;else if(e.clientX||e.clientY)t.x=e.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft)-document.documentElement.clientLeft,t.y=e.clientY+(document.documentElement.scrollTop||document.body.scrollTop)-document.documentElement.clientTop;else if(e.x||e.y)t.x=e.x,t.y=e.y;return t}function lockview(e,t){e=e||window.event,cursor=getPosition(e),lockvisible?lockviewhide():(lockvisible=!0,$j.get("lockview/"+t,function(e){$j("#panel").html(e),$j("#panel").css({left:cursor.x+5,top:cursor.y+5}),$j("#panel").show()}))}function lockviewhide(){lockvisible=!1,$j("#panel").hide()}function post_comment(e){return unpause(),commentBusy=!0,$j("body").css("cursor","wait"),$j("#comment-preview-inp-"+e).val("0"),$j.post("item",$j("#comment-edit-form-"+e).serialize(),function(t){if(t.success){$j("#comment-edit-wrapper-"+e).hide(),$j("#comment-edit-text-"+e).val("");var n=document.getElementById("comment-edit-text-"+e);n&&commentClose(n,e),timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,10)}t.reload&&(window.location.href=t.reload)},"json"),!1}function preview_comment(e){return $j("#comment-preview-inp-"+e).val("1"),$j("#comment-edit-preview-"+e).show(),$j.post("item",$j("#comment-edit-form-"+e).serialize(),function(t){t.preview&&($j("#comment-edit-preview-"+e).html(t.preview),$j("#comment-edit-preview-"+e+" a").click(function(){return!1}))},"json"),!0}function preview_post(){return $j("#jot-preview").val("1"),$j("#jot-preview-content").show(),tinyMCE.triggerSave(),$j.post("item",$j("#profile-jot-form").serialize(),function(e){e.preview&&($j("#jot-preview-content").html(e.preview),$j("#jot-preview-content a").click(function(){return!1}))},"json"),$j("#jot-preview").val("0"),!0}function unpause(){totStopped=!1,stopped=!1,$j("#pause").html("")}function bin2hex(e){var t,n,r=0,i=[];e+="",r=e.length;for(n=0;n<r;n++)i[n]=e.charCodeAt(n).toString(16).replace(/^([\da-f])$/,"0$1");return i.join("")}function groupChangeMember(e,t,n){$j("body .fakelink").css("cursor","wait"),$j.get("group/"+e+"/"+t+"?t="+n,function(e){$j("#group-update-wrapper").html(e),$j("body .fakelink").css("cursor","auto")})}function profChangeMember(e,t){$j("body .fakelink").css("cursor","wait"),$j.get("profperm/"+e+"/"+t,function(e){$j("#prof-update-wrapper").html(e),$j("body .fakelink").css("cursor","auto")})}function contactgroupChangeMember(e,t){$j("body").css("cursor","wait"),$j.get("contactgroup/"+e+"/"+t,function(e){$j("body").css("cursor","auto")})}function checkboxhighlight(e){$j(e).is(":checked")?$j(e).addClass("checkeditem"):$j(e).removeClass("checkeditem")}function notifyMarkAll(){$j.get("notify/mark/all",function(e){timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,1e3)})}function fcFileBrowser(e,t,n,r){var i=baseurl+"/fbrowser/"+n+"/";return tinyMCE.activeEditor.windowManager.open({file:i,title:"File Browser",width:420,height:400,resizable:"yes",inline:"yes",close_previous:"no"},{window:r,input:e}),!1}function setupFieldRichtext(){tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:"fieldRichtext",plugins:"bbcode,paste, inlinepopups",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,file_browser_callback:"fcFileBrowser"})}function previewTheme(e){theme=$j(e).val(),$j.getJSON("pretheme?f=&theme="+theme,function(e){$j("#theme-preview").html('<div id="theme-desc">'+e.desc+'</div><div id="theme-version">'+e.version+'</div><div id="theme-credits">'+e.credits+'</div><a href="'+e.img+'"><img src="'+e.img+'" width="320" height="240" alt="'+theme+'" /></a>')})}var src=null,prev=null,livetime=null,msie=!1,stopped=!1,totStopped=!1,timer=null,pr=0,liking=0,in_progress=!1,langSelect=!1,commentBusy=!1,last_popup_menu=null,last_popup_button=null;$j(function(){function e(e){last_popup_menu&&"#"+last_popup_menu.attr("id")!==$j(e.target).attr("rel")&&(last_popup_menu.hide(),last_popup_button.removeClass("selected"),last_popup_menu=null,last_popup_button=null)}$j.ajaxSetup({cache:!1}),msie=$j.browser.msie,$j(".onoff input").each(function(){val=$j(this).val(),id=$j(this).attr("id"),$j("#"+id+"_onoff ."+(val==0?"on":"off")).addClass("hidden")}),$j(".onoff > a").click(function(e){e.preventDefault();var t=$j(this).siblings("input"),n=1-t.val(),r=t.attr("id");$j("#"+r+"_onoff ."+(n==0?"on":"off")).addClass("hidden"),$j("#"+r+"_onoff ."+(n==1?"on":"off")).removeClass("hidden"),t.val(n)}),setupFieldRichtext(),$j("a[rel^=#]").click(function(t){return e(t),menu=$j($j(this).attr("rel")),t.preventDefault(),t.stopPropagation(),menu.attr("popup")=="false"?!1:($j(this).parent().toggleClass("selected"),menu.slideToggle("fast"),menu.css("display")=="none"?(last_popup_menu=null,last_popup_button=null):(last_popup_menu=menu,last_popup_button=$j(this).parent()),!1)}),$j("html").click(function(t){e(t)}),$j("a.popupbox").fancybox({transitionIn:"none",transitionOut:"none"});var t=unescape($j("#nav-notifications-template[rel=template]").html()),n=unescape($j("<div>").append($j("#nav-notifications-see-all").clone()).html()),r=unescape($j("<div>").append($j("#nav-notifications-mark-all").clone()).html()),i=unescape($j("#nav-notifications-menu").html());$j("nav").bind("nav-update",function(e,s){var o=$j(s).find("invalid").text();o==1&&(window.location.href=window.location.href);var u=$j(s).find("net").text();u==0?(u="",$j("#net-update").removeClass("show")):$j("#net-update").addClass("show"),$j("#net-update").html(u);var a=$j(s).find("home").text();a==0?(a="",$j("#home-update").removeClass("show")):$j("#home-update").addClass("show"),$j("#home-update").html(a);var f=$j(s).find("intro").text();f==0?(f="",$j("#intro-update").removeClass("show")):$j("#intro-update").addClass("show"),$j("#intro-update").html(f);var l=$j(s).find("mail").text();l==0?(l="",$j("#mail-update").removeClass("show")):$j("#mail-update").addClass("show"),$j("#mail-update").html(l);var f=$j(s).find("intro").text();f==0?(f="",$j("#intro-update-li").removeClass("show")):$j("#intro-update-li").addClass("show"),$j("#intro-update-li").html(f);var l=$j(s).find("mail").text();l==0?(l="",$j("#mail-update-li").removeClass("show")):$j("#mail-update-li").addClass("show"),$j("#mail-update-li").html(l);var c=$j(s).find("notif");c.children("note").length==0?$j("#nav-notifications-menu").html(i):(nnm=$j("#nav-notifications-menu"),nnm.html(n+r),c.children("note").each(function(){e=$j(this),text=e.text().format("<span class='contactname'>"+e.attr("name")+"</span>"),html=t.format(e.attr("href"),e.attr("photo"),text,e.attr("date"),e.attr("seen")),nnm.append(html)})),notif=c.attr("count"),notif>0?$j("#nav-notifications-linkmenu").addClass("on"):$j("#nav-notifications-linkmenu").removeClass("on"),notif==0?(notif="",$j("#notify-update").removeClass("show")):$j("#notify-update").addClass("show"),$j("#notify-update").html(notif);var h=$j(s).find("sysmsgs");h.children("notice").each(function(){text=$j(this).text(),$j.jGrowl(text,{sticky:!1,theme:"notice",life:2e3})}),h.children("info").each(function(){text=$j(this).text(),$j.jGrowl(text,{sticky:!1,theme:"info",life:1500})})}),NavUpdate(),$j(document).keydown(function(e){if(e.keyCode=="8"){var t=e.target||e.srcElement;if(!/input|textarea/i.test(t.nodeName))return!1}e.keyCode=="19"||e.ctrlKey&&e.which=="32"?(e.preventDefault(),stopped==0?(stopped=!0,e.ctrlKey&&(totStopped=!0),$j("#pause").html('<img src="images/pause.gif" alt="pause" style="border: 1px solid black;" />')):unpause()):totStopped||unpause()})});var lockvisible=!1;String.prototype.format=function(){var e=this;for(var t=0;t<arguments.length;t++){var n=new RegExp("\\{"+t+"\\}","gi");e=e.replace(n,arguments[t])}return e},Array.prototype.remove=function(e){to=undefined,from=this.indexOf(e);var t=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,t)};
\ No newline at end of file
+function openClose(e){document.getElementById(e).style.display=="block"?document.getElementById(e).style.display="none":document.getElementById(e).style.display="block"}function openMenu(e){document.getElementById(e).style.display="block"}function closeMenu(e){document.getElementById(e).style.display="none"}function NavUpdate(){if(!stopped){var e="ping"+(localUser!=0?"?f=&uid="+localUser:"");$j.get(e,function(e){$j(e).find("result").each(function(){$j("nav").trigger("nav-update",this),$j("#live-network").length&&(src="network",liveUpdate()),$j("#live-profile").length&&(src="profile",liveUpdate()),$j("#live-community").length&&(src="community",liveUpdate()),$j("#live-notes").length&&(src="notes",liveUpdate()),$j("#live-display").length&&liking&&(liking=0,window.location.href=window.location.href),$j("#live-photos").length&&liking&&(liking=0,window.location.href=window.location.href)})})}timer=setTimeout(NavUpdate,updateInterval)}function liveUpdate(){if(src==null||stopped||!profile_uid){$j(".like-rotator").hide();return}if($j(".comment-edit-text-full").length||in_progress){livetime&&clearTimeout(livetime),livetime=setTimeout(liveUpdate,1e4);return}livetime!=null&&(livetime=null),prev="live-"+src,in_progress=!0;var e=netargs.length?"/"+netargs:"",t="update_"+src+e+"&p="+profile_uid+"&page="+profile_page+"&msie="+(msie?1:0);$j.get(t,function(e){in_progress=!1,$j(".toplevel_item",e).each(function(){var e=$j(this).attr("id");$j("#"+e).length==0&&profile_page==1?($j("img",this).each(function(){$j(this).attr("src",$j(this).attr("dst"))}),$j("#"+prev).after($j(this))):($j("img",this).each(function(){$j(this).attr("src",$j(this).attr("dst"))}),$j("#"+e).replaceWith($j(this))),prev=e}),$j(".like-rotator").hide(),commentBusy&&(commentBusy=!1,$j("body").css("cursor","auto")),$j(".comment-edit-form  textarea").contact_autocomplete(baseurl+"/acl");var t=$j(".wall-item-body > img").not(function(){return this.complete}),n=t.length;n?t.load(function(){n--,n||collapseHeight()}):collapseHeight()})}function collapseHeight(){$j(".wall-item-body").each(function(){$j(this).height()>410&&($j(this).hasClass("divmore")||($j(this).divgrow({initialHeight:400,showBrackets:!1,speed:300}),$j(this).addClass("divmore")))})}function imgbright(e){$j(e).removeClass("drophide").addClass("drop")}function imgdull(e){$j(e).removeClass("drop").addClass("drophide")}function dolike(e,t){unpause(),$j("#like-rotator-"+e.toString()).show(),$j.get("like/"+e.toString()+"?verb="+t,NavUpdate),liking=1}function dostar(e){e=e.toString(),$j.get("starred/"+e,function(t){t.match(/1/)?($j("#starred-"+e).addClass("starred"),$j("#starred-"+e).removeClass("unstarred"),$j("#star-"+e).addClass("hidden"),$j("#unstar-"+e).removeClass("hidden")):($j("#starred-"+e).addClass("unstarred"),$j("#starred-"+e).removeClass("starred"),$j("#star-"+e).removeClass("hidden"),$j("#unstar-"+e).addClass("hidden"))})}function getPosition(e){var t={x:0,y:0};if(e.pageX||e.pageY)t.x=e.pageX,t.y=e.pageY;else if(e.clientX||e.clientY)t.x=e.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft)-document.documentElement.clientLeft,t.y=e.clientY+(document.documentElement.scrollTop||document.body.scrollTop)-document.documentElement.clientTop;else if(e.x||e.y)t.x=e.x,t.y=e.y;return t}function lockview(e,t){e=e||window.event,cursor=getPosition(e),lockvisible?lockviewhide():(lockvisible=!0,$j.get("lockview/"+t,function(e){$j("#panel").html(e),$j("#panel").css({left:cursor.x+5,top:cursor.y+5}),$j("#panel").show()}))}function lockviewhide(){lockvisible=!1,$j("#panel").hide()}function post_comment(e){return unpause(),commentBusy=!0,$j("body").css("cursor","wait"),$j("#comment-preview-inp-"+e).val("0"),$j.post("item",$j("#comment-edit-form-"+e).serialize(),function(t){if(t.success){$j("#comment-edit-wrapper-"+e).hide(),$j("#comment-edit-text-"+e).val("");var n=document.getElementById("comment-edit-text-"+e);n&&commentClose(n,e),timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,10)}t.reload&&(window.location.href=t.reload)},"json"),!1}function preview_comment(e){return $j("#comment-preview-inp-"+e).val("1"),$j("#comment-edit-preview-"+e).show(),$j.post("item",$j("#comment-edit-form-"+e).serialize(),function(t){t.preview&&($j("#comment-edit-preview-"+e).html(t.preview),$j("#comment-edit-preview-"+e+" a").click(function(){return!1}))},"json"),!0}function preview_post(){return $j("#jot-preview").val("1"),$j("#jot-preview-content").show(),tinyMCE.triggerSave(),$j.post("item",$j("#profile-jot-form").serialize(),function(e){e.preview&&($j("#jot-preview-content").html(e.preview),$j("#jot-preview-content a").click(function(){return!1}))},"json"),$j("#jot-preview").val("0"),!0}function unpause(){totStopped=!1,stopped=!1,$j("#pause").html("")}function bin2hex(e){var t,n,r=0,i=[];e+="",r=e.length;for(n=0;n<r;n++)i[n]=e.charCodeAt(n).toString(16).replace(/^([\da-f])$/,"0$1");return i.join("")}function groupChangeMember(e,t,n){$j("body .fakelink").css("cursor","wait"),$j.get("group/"+e+"/"+t+"?t="+n,function(e){$j("#group-update-wrapper").html(e),$j("body .fakelink").css("cursor","auto")})}function profChangeMember(e,t){$j("body .fakelink").css("cursor","wait"),$j.get("profperm/"+e+"/"+t,function(e){$j("#prof-update-wrapper").html(e),$j("body .fakelink").css("cursor","auto")})}function contactgroupChangeMember(e,t){$j("body").css("cursor","wait"),$j.get("contactgroup/"+e+"/"+t,function(e){$j("body").css("cursor","auto")})}function checkboxhighlight(e){$j(e).is(":checked")?$j(e).addClass("checkeditem"):$j(e).removeClass("checkeditem")}function notifyMarkAll(){$j.get("notify/mark/all",function(e){timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,1e3)})}function fcFileBrowser(e,t,n,r){var i=baseurl+"/fbrowser/"+n+"/";return tinyMCE.activeEditor.windowManager.open({file:i,title:"File Browser",width:420,height:400,resizable:"yes",inline:"yes",close_previous:"no"},{window:r,input:e}),!1}function setupFieldRichtext(){tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:"fieldRichtext",plugins:"bbcode,paste, inlinepopups",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,file_browser_callback:"fcFileBrowser"})}function previewTheme(e){theme=$j(e).val(),$j.getJSON("pretheme?f=&theme="+theme,function(e){$j("#theme-preview").html('<div id="theme-desc">'+e.desc+'</div><div id="theme-version">'+e.version+'</div><div id="theme-credits">'+e.credits+'</div><a href="'+e.img+'"><img src="'+e.img+'" width="320" height="240" alt="'+theme+'" /></a>')})}var src=null,prev=null,livetime=null,msie=!1,stopped=!1,totStopped=!1,timer=null,pr=0,liking=0,in_progress=!1,langSelect=!1,commentBusy=!1,last_popup_menu=null,last_popup_button=null;$j(function(){function e(e){last_popup_menu&&"#"+last_popup_menu.attr("id")!==$j(e.target).attr("rel")&&(last_popup_menu.hide(),last_popup_button.removeClass("selected"),last_popup_menu=null,last_popup_button=null)}$j.ajaxSetup({cache:!1}),msie=$j.browser.msie,$j(".onoff input").each(function(){val=$j(this).val(),id=$j(this).attr("id"),$j("#"+id+"_onoff ."+(val==0?"on":"off")).addClass("hidden")}),$j(".onoff > a").click(function(e){e.preventDefault();var t=$j(this).siblings("input"),n=1-t.val(),r=t.attr("id");$j("#"+r+"_onoff ."+(n==0?"on":"off")).addClass("hidden"),$j("#"+r+"_onoff ."+(n==1?"on":"off")).removeClass("hidden"),t.val(n)}),setupFieldRichtext(),$j("a[rel^=#]").click(function(t){return e(t),menu=$j($j(this).attr("rel")),t.preventDefault(),t.stopPropagation(),menu.attr("popup")=="false"?!1:($j(this).parent().toggleClass("selected"),menu.slideToggle("fast"),menu.css("display")=="none"?(last_popup_menu=null,last_popup_button=null):(last_popup_menu=menu,last_popup_button=$j(this).parent()),!1)}),$j("html").click(function(t){e(t)}),$j("a.popupbox").fancybox({transitionIn:"none",transitionOut:"none"});var t=unescape($j("#nav-notifications-template[rel=template]").html()),n=unescape($j("<div>").append($j("#nav-notifications-see-all").clone()).html()),r=unescape($j("<div>").append($j("#nav-notifications-mark-all").clone()).html()),i=unescape($j("#nav-notifications-menu").html());$j("nav").bind("nav-update",function(e,s){var o=$j(s).find("invalid").text();o==1&&(window.location.href=window.location.href);var u=$j(s).find("net").text();u==0?(u="",$j("#net-update").removeClass("show")):$j("#net-update").addClass("show"),$j("#net-update").html(u);var a=$j(s).find("home").text();a==0?(a="",$j("#home-update").removeClass("show")):$j("#home-update").addClass("show"),$j("#home-update").html(a);var f=$j(s).find("intro").text();f==0?(f="",$j("#intro-update").removeClass("show")):$j("#intro-update").addClass("show"),$j("#intro-update").html(f);var l=$j(s).find("mail").text();l==0?(l="",$j("#mail-update").removeClass("show")):$j("#mail-update").addClass("show"),$j("#mail-update").html(l);var f=$j(s).find("intro").text();f==0?(f="",$j("#intro-update-li").removeClass("show")):$j("#intro-update-li").addClass("show"),$j("#intro-update-li").html(f);var l=$j(s).find("mail").text();l==0?(l="",$j("#mail-update-li").removeClass("show")):$j("#mail-update-li").addClass("show"),$j("#mail-update-li").html(l);var c=$j(s).find("notif");c.children("note").length==0?$j("#nav-notifications-menu").html(i):(nnm=$j("#nav-notifications-menu"),nnm.html(n+r),c.children("note").each(function(){e=$j(this),text=e.text().format("<span class='contactname'>"+e.attr("name")+"</span>"),html=t.format(e.attr("href"),e.attr("photo"),text,e.attr("date"),e.attr("seen")),nnm.append(html)})),notif=c.attr("count"),notif>0?$j("#nav-notifications-linkmenu").addClass("on"):$j("#nav-notifications-linkmenu").removeClass("on"),notif==0?(notif="",$j("#notify-update").removeClass("show")):$j("#notify-update").addClass("show"),$j("#notify-update").html(notif);var h=$j(s).find("sysmsgs");h.children("notice").each(function(){text=$j(this).text(),$j.jGrowl(text,{sticky:!1,theme:"notice",life:2e3})}),h.children("info").each(function(){text=$j(this).text(),$j.jGrowl(text,{sticky:!1,theme:"info",life:1500})})}),NavUpdate(),$j(document).keydown(function(e){if(e.keyCode=="8"){var t=e.target||e.srcElement;if(!/input|textarea/i.test(t.nodeName))return!1}e.keyCode=="19"||e.ctrlKey&&e.which=="32"?(e.preventDefault(),stopped==0?(stopped=!0,e.ctrlKey&&(totStopped=!0),$j("#pause").html('<img src="images/pause.gif" alt="pause" style="border: 1px solid black;" />')):unpause()):totStopped||unpause()})});var lockvisible=!1;String.prototype.format=function(){var e=this;for(var t=0;t<arguments.length;t++){var n=new RegExp("\\{"+t+"\\}","gi");e=e.replace(n,arguments[t])}return e},Array.prototype.remove=function(e){to=undefined,from=this.indexOf(e);var t=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,t)};
\ No newline at end of file
index 9094398b4f7f2e39c474670a02d739e458321501..7c7e3c1d24d258bb6e3548898b562e78bbf7c103 100644 (file)
@@ -275,6 +275,7 @@ $j(function(){
                autoDimensions: false,
                onStart: function(){
                        var theme = $j("#id_theme :selected").val();
+                       var theme_mobile = $j("#id_theme_mobile :selected").val();
                        $j("#cnftheme").attr('href', baseurl + "/admin/themes/"+theme);
                }, 
                onComplete: function(){
@@ -522,10 +523,10 @@ function insertFormatting(comment,BBcode,id) {
 }
 
 function cmtBbOpen(id) {
-       $j(".comment-edit-bb-" + id).show();
+       $j("#comment-edit-bb-" + id).show();
 }
 function cmtBbClose(id) {
-       $j(".comment-edit-bb-" + id).hide();
+       $j("#comment-edit-bb-" + id).hide();
 }
 
 function confirmDelete() { return confirm(window.delItem); }
@@ -594,6 +595,15 @@ function showHideComments(id) {
        }
 }
 
+/*function showHideCommentBox(id) {
+       if( $j('#comment-edit-form-' + id).is(':visible')) {
+               $j('#comment-edit-form-' + id).hide();
+       }
+       else {
+               $j('#comment-edit-form-' + id).show();
+       }
+}*/
+
 
 
 function enableOnUser(){
index 5831190f99179fa59f63fe0ad5eae347bf8d9f27..8c5cd16ada5f1ace4b2204cce6bef7a80579329b 100644 (file)
@@ -1 +1 @@
-function showEvent(e){$j.get(baseurl+"/events/?id="+e,function(e){$j.fancybox(e)})}function initCrop(){function e(e,t){$("x1").value=e.x1,$("y1").value=e.y1,$("x2").value=e.x2,$("y2").value=e.y2,$("width").value=t.width,$("height").value=t.height}Event.observe(window,"load",function(){new Cropper.ImgWithPreview("croppa",{previewWrap:"previewWrap",minWidth:175,minHeight:175,maxWidth:640,maxHeight:640,ratioDim:{x:100,y:100},displayOnInit:!0,onEndCrop:e})})}function showNavMenu(e){window.navMenuTimeout[e+"-closing"]?(window.navMenuTimeout[e+"-closing"]=!1,clearTimeout(window.navMenuTimeout[e+"-timeout"])):(window.navMenuTimeout[e+"-opening"]=!0,window.navMenuTimeout[e+"-timeout"]=setTimeout(function(){$j(e).slideDown("fast").show(),window.navMenuTimeout[e+"-opening"]=!1},200))}function hideNavMenu(e){window.navMenuTimeout[e+"-opening"]?(window.navMenuTimeout[e+"-opening"]=!1,clearTimeout(window.navMenuTimeout[e+"-timeout"])):(window.navMenuTimeout[e+"-closing"]=!0,window.navMenuTimeout[e+"-timeout"]=setTimeout(function(){$j(e).slideUp("fast"),window.navMenuTimeout[e+"-closing"]=!1},500))}function insertFormatting(e,t,n){var r=$j("#comment-edit-text-"+n).val();r==e&&(r="",$j("#comment-edit-text-"+n).addClass("comment-edit-text-full"),$j("#comment-edit-text-"+n).removeClass("comment-edit-text-empty"),openMenu("comment-edit-submit-wrapper-"+n),$j("#comment-edit-text-"+n).val(r)),textarea=document.getElementById("comment-edit-text-"+n);if(document.selection)textarea.focus(),selected=document.selection.createRange(),t=="url"?selected.text="["+t+"]"+"http://"+selected.text+"[/"+t+"]":selected.text="["+t+"]"+selected.text+"[/"+t+"]";else if(textarea.selectionStart||textarea.selectionStart=="0"){var i=textarea.selectionStart,s=textarea.selectionEnd;t=="url"?textarea.value=textarea.value.substring(0,i)+"["+t+"]"+"http://"+textarea.value.substring(i,s)+"[/"+t+"]"+textarea.value.substring(s,textarea.value.length):textarea.value=textarea.value.substring(0,i)+"["+t+"]"+textarea.value.substring(i,s)+"[/"+t+"]"+textarea.value.substring(s,textarea.value.length)}return!0}function cmtBbOpen(e){$j(".comment-edit-bb-"+e).show()}function cmtBbClose(e){$j(".comment-edit-bb-"+e).hide()}function confirmDelete(){return confirm(window.delItem)}function commentOpen(e,t){e.value==window.commentEmptyText&&(e.value="",$j("#comment-edit-text-"+t).addClass("comment-edit-text-full"),$j("#comment-edit-text-"+t).removeClass("comment-edit-text-empty"),$j("#mod-cmnt-wrap-"+t).show(),openMenu("comment-edit-submit-wrapper-"+t))}function commentClose(e,t){e.value==""&&(e.value=window.commentEmptyText,$j("#comment-edit-text-"+t).removeClass("comment-edit-text-full"),$j("#comment-edit-text-"+t).addClass("comment-edit-text-empty"),$j("#mod-cmnt-wrap-"+t).hide(),closeMenu("comment-edit-submit-wrapper-"+t))}function commentInsert(e,t){var n=$j("#comment-edit-text-"+t).val();n==window.commentEmptyText&&(n="",$j("#comment-edit-text-"+t).addClass("comment-edit-text-full"),$j("#comment-edit-text-"+t).removeClass("comment-edit-text-empty"),openMenu("comment-edit-submit-wrapper-"+t));var r=$j(e).html();r=r.replace("&lt;","<"),r=r.replace("&gt;",">"),r=r.replace("&amp;","&"),r=r.replace("&quot;",'"'),$j("#comment-edit-text-"+t).val(n+r)}function qCommentInsert(e,t){var n=$j("#comment-edit-text-"+t).val();n==window.commentEmptyText&&(n="",$j("#comment-edit-text-"+t).addClass("comment-edit-text-full"),$j("#comment-edit-text-"+t).removeClass("comment-edit-text-empty"),openMenu("comment-edit-submit-wrapper-"+t));var r=$j(e).val();r=r.replace("&lt;","<"),r=r.replace("&gt;",">"),r=r.replace("&amp;","&"),r=r.replace("&quot;",'"'),$j("#comment-edit-text-"+t).val(n+r),$j(e).val("")}function showHideComments(e){$j("#collapsed-comments-"+e).is(":visible")?($j("#collapsed-comments-"+e).hide(),$j("#hide-comments-"+e).html(window.showMore)):($j("#collapsed-comments-"+e).show(),$j("#hide-comments-"+e).html(window.showFewer))}function enableOnUser(){if(editor)return;$j(this).val(""),initEditor()}function initEditor(e){if(editor==0){$j("#profile-jot-text-loading").show();if(plaintext=="none"){$j("#profile-jot-text-loading").hide(),$j("#profile-jot-text").css({height:200,color:"#000"}),$j("#profile-jot-text").contact_autocomplete(baseurl+"/acl"),editor=!0,$j("a#jot-perms-icon").fancybox({transitionIn:"elastic",transitionOut:"elastic"}),$j(".jothidden").show(),typeof e!="undefined"&&e();return}tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:window.editSelect,auto_focus:"profile-jot-text",plugins:"bbcode,paste,autoresize, inlinepopups",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",gecko_spellcheck:!0,paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:window.baseURL+"/view/custom_tinymce.css",theme_advanced_path:!1,file_browser_callback:"fcFileBrowser",setup:function(t){cPopup=null,t.onKeyDown.add(function(e,t){cPopup!==null&&cPopup.onkey(t)}),t.onKeyUp.add(function(e,t){var n=tinyMCE.activeEditor.getContent();match=n.match(/@([^ \n]+)$/),match!==null?(cPopup===null&&(cPopup=new ACPopup(this,baseurl+"/acl")),cPopup.ready&&match[1]!==cPopup.searchText&&cPopup.search(match[1]),cPopup.ready||(cPopup=null)):cPopup!==null&&(cPopup.close(),cPopup=null),textlen=n.length,textlen!=0&&$j("#jot-perms-icon").is(".unlock")?$j("#profile-jot-desc").html(ispublic):$j("#profile-jot-desc").html("&nbsp;"),textlen<=140&&($j("#character-counter").removeClass("red"),$j("#character-counter").removeClass("orange"),$j("#character-counter").addClass("grey")),textlen>140&&textlen<=420&&($j("#character-counter").removeClass("grey"),$j("#character-counter").removeClass("red"),$j("#character-counter").addClass("orange")),textlen>420&&($j("#character-counter").removeClass("grey"),$j("#character-counter").removeClass("orange"),$j("#character-counter").addClass("red")),$j("#character-counter").text(textlen)}),t.onInit.add(function(t){t.pasteAsPlainText=!0,$j("#profile-jot-text-loading").hide(),$j(".jothidden").show(),typeof e!="undefined"&&e()})}}),editor=!0,$j("a#jot-perms-icon").fancybox({transitionIn:"none",transitionOut:"none"})}else typeof e!="undefined"&&e()}function msgInitEditor(){plaintext!="none"?tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:/(profile-jot-text|prvmail-text)/,plugins:"bbcode,paste",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",gecko_spellcheck:!0,paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,setup:function(e){e.onInit.add(function(e){e.pasteAsPlainText=!0;var t=e.editorId,n=$j("#"+t);typeof n.attr("tabindex")!="undefined"&&($j("#"+t+"_ifr").attr("tabindex",n.attr("tabindex")),n.attr("tabindex",null))})}}):$j("#prvmail-text").contact_autocomplete(baseurl+"/acl")}function profInitEditor(){tinyMCE.init({theme:"advanced",mode:window.editSelect,plugins:"bbcode,paste",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",gecko_spellcheck:!0,paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,setup:function(e){e.onInit.add(function(e){e.pasteAsPlainText=!0})}})}function eventInitEditor(){tinyMCE.init({theme:"advanced",mode:"textareas",plugins:"bbcode,paste",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",gecko_spellcheck:!0,paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,setup:function(e){e.onInit.add(function(e){e.pasteAsPlainText=!0})}})}function contactInitEditor(){tinyMCE.init({theme:"advanced",mode:window.editSelect,elements:"contact-edit-info",plugins:"bbcode",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_styles:"blockquote,code",gecko_spellcheck:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",content_css:baseurl+"/view/custom_tinymce.css"})}function wallInitEditor(){var e=window.editSelect;e!="none"?tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:/(profile-jot-text|prvmail-text)/,plugins:"bbcode,paste",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",gecko_spellcheck:!0,paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,setup:function(e){e.onInit.add(function(e){e.pasteAsPlainText=!0;var t=e.editorId,n=$j("#"+t);typeof n.attr("tabindex")!="undefined"&&($j("#"+t+"_ifr").attr("tabindex",n.attr("tabindex")),n.attr("tabindex",null))})}}):$j("#prvmail-text").contact_autocomplete(baseurl+"/acl")}function deleteCheckedItems(){var e="";$j(".item-select").each(function(){$j(this).is(":checked")&&(e.length!=0?e=e+","+$j(this).val():e=$j(this).val())}),$j.post("item",{dropitems:e},function(e){window.location.reload()})}function jotVideoURL(){reply=prompt(window.vidURL),reply&&reply.length&&addeditortext("[video]"+reply+"[/video]")}function jotAudioURL(){reply=prompt(window.audURL),reply&&reply.length&&addeditortext("[audio]"+reply+"[/audio]")}function jotGetLocation(){reply=prompt(window.whereAreU,$j("#jot-location").val()),reply&&reply.length&&$j("#jot-location").val(reply)}function jotShare(e){$j("#jot-popup").length!=0&&$j("#jot-popup").show(),$j("#like-rotator-"+e).show(),$j.get("share/"+e,function(t){editor||$j("#profile-jot-text").val(""),initEditor(function(){addeditortext(t),$j("#like-rotator-"+e).hide(),$j(window).scrollTop(0)})})}function linkdropper(e){var t=e.dataTransfer.types.contains("text/uri-list");t&&e.preventDefault()}function itemTag(e){reply=prompt(window.term),reply&&reply.length&&(reply=reply.replace("#",""),reply.length&&(commentBusy=!0,$j("body").css("cursor","wait"),$j.get("tagger/"+e+"?term="+reply,NavUpdate),liking=1))}function itemFiler(e){var t=$j("input").css("border-color");$j.get("filer/",function(n){$j.fancybox(n),$j("#id_term").keypress(function(){$j(this).css("border-color",t)}),$j("#select_term").change(function(){$j("#id_term").css("border-color",t)}),$j("#filer_save").click(function(t){return t.preventDefault(),reply=$j("#id_term").val(),reply&&reply.length?(commentBusy=!0,$j("body").css("cursor","wait"),$j.get("filer/"+e+"?term="+reply,NavUpdate),liking=1,$j.fancybox.close()):$j("#id_term").css("border-color","#FF0000"),!1})})}function jotClearLocation(){$j("#jot-coord").val(""),$j("#profile-nolocation-wrapper").hide()}function addeditortext(e){if(plaintext=="none"){var t=$j("#profile-jot-text").val();$j("#profile-jot-text").val(t+e)}else tinyMCE.execCommand("mceInsertRawHTML",!1,e)}$j(document).ready(function(){window.navMenuTimeout={"#network-menu-list-timeout":null,"#contacts-menu-list-timeout":null,"#system-menu-list-timeout":null,"#network-menu-list-opening":!1,"#contacts-menu-list-opening":!1,"#system-menu-list-opening":!1,"#network-menu-list-closing":!1,"#contacts-menu-list-closing":!1,"#system-menu-list-closing":!1},typeof acl=="undefined"&&(acl=new ACL(baseurl+"/acl",[window.allowCID,window.allowGID,window.denyCID,window.denyGID])),$j("#profile-jot-text").focus(enableOnUser),$j("#profile-jot-text").click(enableOnUser),$j(".nav-menu-link").hover(function(){showNavMenu($j(this).attr("rel"))},function(){hideNavMenu($j(this).attr("rel"))}),$j(".group-edit-icon").hover(function(){$j(this).addClass("icon"),$j(this).removeClass("iconspacer")},function(){$j(this).removeClass("icon"),$j(this).addClass("iconspacer")}),$j(".sidebar-group-element").hover(function(){id=$j(this).attr("id"),$j("#edit-"+id).addClass("icon"),$j("#edit-"+id).removeClass("iconspacer")},function(){id=$j(this).attr("id"),$j("#edit-"+id).removeClass("icon"),$j("#edit-"+id).addClass("iconspacer")}),$j(".savedsearchdrop").hover(function(){$j(this).addClass("drop"),$j(this).addClass("icon"),$j(this).removeClass("iconspacer")},function(){$j(this).removeClass("drop"),$j(this).removeClass("icon"),$j(this).addClass("iconspacer")}),$j(".savedsearchterm").hover(function(){id=$j(this).attr("id"),$j("#drop-"+id).addClass("icon"),$j("#drop-"+id).addClass("drophide"),$j("#drop-"+id).removeClass("iconspacer")},function(){id=$j(this).attr("id"),$j("#drop-"+id).removeClass("icon"),$j("#drop-"+id).removeClass("drophide"),$j("#drop-"+id).addClass("iconspacer")}),window.autoCompleteType=="display-head"&&$j(".comment-wwedit-wrapper textarea").contact_autocomplete(baseurl+"/acl");if(window.aclType=="event_head"){$j("#events-calendar").fullCalendar({events:baseurl+"/events/json/",header:{left:"prev,next today",center:"title",right:"month,agendaWeek,agendaDay"},timeFormat:"H(:mm)",eventClick:function(e,t,n){showEvent(e.id)},eventRender:function(e,t,n){if(e.item["author-name"]==null)return;switch(n.name){case"month":t.find(".fc-event-title").html("<img src='{0}' style='height:10px;width:10px'>{1} : {2}".format(e.item["author-avatar"],e.item["author-name"],e.title));break;case"agendaWeek":t.find(".fc-event-title").html("<img src='{0}' style='height:12px; width:12px'>{1}<p>{2}</p><p>{3}</p>".format(e.item["author-avatar"],e.item["author-name"],e.item.desc,e.item.location));break;case"agendaDay":t.find(".fc-event-title").html("<img src='{0}' style='height:24px;width:24px'>{1}<p>{2}</p><p>{3}</p>".format(e.item["author-avatar"],e.item["author-name"],e.item.desc,e.item.location))}}});var e=location.href.replace(baseurl,"").split("/");e.length>=4&&$j("#events-calendar").fullCalendar("gotoDate",e[2],e[3]-1);var t=location.hash.split("-");t.length==2&&t[0]=="#link"&&showEvent(t[1])}$j("#event-share-checkbox").change(function(){$j("#event-share-checkbox").is(":checked")?$j("#acl-wrapper").show():$j("#acl-wrapper").hide()}).trigger("change"),(window.aclType=="settings-head"||window.aclType=="photos_head"||window.aclType=="event_head")&&$j("#contact_allow, #contact_deny, #group_allow, #group_deny").change(function(){var e;$j("#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected").each(function(){e=$j(this).text(),$j("#jot-perms-icon").removeClass("unlock").addClass("lock"),$j("#jot-public").hide()}),e==null&&($j("#jot-perms-icon").removeClass("lock").addClass("unlock"),$j("#jot-public").show())}).trigger("change");switch(window.autocompleteType){case"msg-header":var n=$j("#recip").autocomplete({serviceUrl:baseurl+"/acl",minChars:2,width:350,onSelect:function(e,t){$j("#recip-complete").val(t)}});break;case"contacts-head":var n=$j("#contacts-search").autocomplete({serviceUrl:baseurl+"/acl",minChars:2,width:350});n.setOptions({params:{type:"a"}});break;default:}if(typeof window.AjaxUpload!="undefined")switch(window.ajaxType){case"jot-header":var r=new window.AjaxUpload("wall-image-upload",{action:"wall_upload/"+window.nickname,name:"userfile",onSubmit:function(e,t){$j("#profile-rotator").show()},onComplete:function(e,t){addeditortext(t),$j("#profile-rotator").hide()}}),i=new window.AjaxUpload("wall-file-upload",{action:"wall_attach/"+window.nickname,name:"userfile",onSubmit:function(e,t){$j("#profile-rotator").show()},onComplete:function(e,t){addeditortext(t),$j("#profile-rotator").hide()}});break;case"msg-header":var r=new window.AjaxUpload("prvmail-upload",{action:"wall_upload/"+window.nickname,name:"userfile",onSubmit:function(e,t){$j("#profile-rotator").show()},onComplete:function(e,t){tinyMCE.execCommand("mceInsertRawHTML",!1,t),$j("#profile-rotator").hide()}});break;default:}}),$j(function(){$j("nav").bind("nav-update",function(e,t){var n=$j("#pending-update"),r=$j(t).find("register").text();r=="0"?(r="",n.hide()):n.show(),n.html(r)})}),$j(function(){$j("#cnftheme").fancybox({width:800,autoDimensions:!1,onStart:function(){var e=$j("#id_theme :selected").val();$j("#cnftheme").attr("href",baseurl+"/admin/themes/"+e)},onComplete:function(){$j("div#fancybox-content form").submit(function(e){var t=$j(this).attr("action"),n={};return $j(this).find("input").each(function(){n[$j(this).attr("name")]=$j(this).val()}),$j(this).find("select").each(function(){n[$j(this).attr("name")]=$j(this).children(":selected").val()}),console.log(":)",t,n),$j.post(t,n,function(e){timer&&clearTimeout(timer),NavUpdate(),$j.fancybox.close()}),!1})}})}),typeof window.photoEdit!="undefined"&&$j(document).keydown(function(e){window.prevLink!=""&&e.ctrlKey&&e.keyCode==37&&(e.preventDefault(),window.location.href=window.prevLink),window.nextLink!=""&&e.ctrlKey&&e.keyCode==39&&(e.preventDefault(),window.location.href=window.nextLink)});switch(window.ajaxType){case"jot-header":function jotGetLink(){reply=prompt(window.linkURL),reply&&reply.length&&(reply=bin2hex(reply),$j("#profile-rotator").show(),$j.get("parse_url?binurl="+reply,function(e){addeditortext(e),$j("#profile-rotator").hide()}))}function linkdrop(e){var t=e.dataTransfer.getData("text/uri-list");e.target.textContent=t,e.preventDefault(),t&&t.length&&(t=bin2hex(t),$j("#profile-rotator").show(),$j.get("parse_url?binurl="+t,function(e){editor||$j("#profile-jot-text").val(""),initEditor(function(){addeditortext(e),$j("#profile-rotator").hide()})}))}break;case"msg-header":case"wallmsg-header":function jotGetLink(){reply=prompt(window.linkURL),reply&&reply.length&&($j("#profile-rotator").show(),$j.get("parse_url?url="+reply,function(e){tinyMCE.execCommand("mceInsertRawHTML",!1,e),$j("#profile-rotator").hide()}))}function linkdrop(e){var t=e.dataTransfer.getData("text/uri-list");e.target.textContent=t,e.preventDefault(),t&&t.length&&($j("#profile-rotator").show(),$j.get("parse_url?url="+t,function(e){tinyMCE.execCommand("mceInsertRawHTML",!1,e),$j("#profile-rotator").hide()}))}break;default:}var editor=!1,textlen=0,plaintext=window.editSelect,ispublic=window.isPublic;typeof window.geoTag=="function"&&window.geoTag();
\ No newline at end of file
+function showEvent(e){$j.get(baseurl+"/events/?id="+e,function(e){$j.fancybox(e)})}function initCrop(){function e(e,t){$("x1").value=e.x1,$("y1").value=e.y1,$("x2").value=e.x2,$("y2").value=e.y2,$("width").value=t.width,$("height").value=t.height}Event.observe(window,"load",function(){new Cropper.ImgWithPreview("croppa",{previewWrap:"previewWrap",minWidth:175,minHeight:175,maxWidth:640,maxHeight:640,ratioDim:{x:100,y:100},displayOnInit:!0,onEndCrop:e})})}function showNavMenu(e){window.navMenuTimeout[e+"-closing"]?(window.navMenuTimeout[e+"-closing"]=!1,clearTimeout(window.navMenuTimeout[e+"-timeout"])):(window.navMenuTimeout[e+"-opening"]=!0,window.navMenuTimeout[e+"-timeout"]=setTimeout(function(){$j(e).slideDown("fast").show(),window.navMenuTimeout[e+"-opening"]=!1},200))}function hideNavMenu(e){window.navMenuTimeout[e+"-opening"]?(window.navMenuTimeout[e+"-opening"]=!1,clearTimeout(window.navMenuTimeout[e+"-timeout"])):(window.navMenuTimeout[e+"-closing"]=!0,window.navMenuTimeout[e+"-timeout"]=setTimeout(function(){$j(e).slideUp("fast"),window.navMenuTimeout[e+"-closing"]=!1},500))}function insertFormatting(e,t,n){var r=$j("#comment-edit-text-"+n).val();r==e&&(r="",$j("#comment-edit-text-"+n).addClass("comment-edit-text-full"),$j("#comment-edit-text-"+n).removeClass("comment-edit-text-empty"),openMenu("comment-edit-submit-wrapper-"+n),$j("#comment-edit-text-"+n).val(r)),textarea=document.getElementById("comment-edit-text-"+n);if(document.selection)textarea.focus(),selected=document.selection.createRange(),t=="url"?selected.text="["+t+"]"+"http://"+selected.text+"[/"+t+"]":selected.text="["+t+"]"+selected.text+"[/"+t+"]";else if(textarea.selectionStart||textarea.selectionStart=="0"){var i=textarea.selectionStart,s=textarea.selectionEnd;t=="url"?textarea.value=textarea.value.substring(0,i)+"["+t+"]"+"http://"+textarea.value.substring(i,s)+"[/"+t+"]"+textarea.value.substring(s,textarea.value.length):textarea.value=textarea.value.substring(0,i)+"["+t+"]"+textarea.value.substring(i,s)+"[/"+t+"]"+textarea.value.substring(s,textarea.value.length)}return!0}function cmtBbOpen(e){$j("#comment-edit-bb-"+e).show()}function cmtBbClose(e){$j("#comment-edit-bb-"+e).hide()}function confirmDelete(){return confirm(window.delItem)}function commentOpen(e,t){e.value==window.commentEmptyText&&(e.value="",$j("#comment-edit-text-"+t).addClass("comment-edit-text-full"),$j("#comment-edit-text-"+t).removeClass("comment-edit-text-empty"),$j("#mod-cmnt-wrap-"+t).show(),openMenu("comment-edit-submit-wrapper-"+t))}function commentClose(e,t){e.value==""&&(e.value=window.commentEmptyText,$j("#comment-edit-text-"+t).removeClass("comment-edit-text-full"),$j("#comment-edit-text-"+t).addClass("comment-edit-text-empty"),$j("#mod-cmnt-wrap-"+t).hide(),closeMenu("comment-edit-submit-wrapper-"+t))}function commentInsert(e,t){var n=$j("#comment-edit-text-"+t).val();n==window.commentEmptyText&&(n="",$j("#comment-edit-text-"+t).addClass("comment-edit-text-full"),$j("#comment-edit-text-"+t).removeClass("comment-edit-text-empty"),openMenu("comment-edit-submit-wrapper-"+t));var r=$j(e).html();r=r.replace("&lt;","<"),r=r.replace("&gt;",">"),r=r.replace("&amp;","&"),r=r.replace("&quot;",'"'),$j("#comment-edit-text-"+t).val(n+r)}function qCommentInsert(e,t){var n=$j("#comment-edit-text-"+t).val();n==window.commentEmptyText&&(n="",$j("#comment-edit-text-"+t).addClass("comment-edit-text-full"),$j("#comment-edit-text-"+t).removeClass("comment-edit-text-empty"),openMenu("comment-edit-submit-wrapper-"+t));var r=$j(e).val();r=r.replace("&lt;","<"),r=r.replace("&gt;",">"),r=r.replace("&amp;","&"),r=r.replace("&quot;",'"'),$j("#comment-edit-text-"+t).val(n+r),$j(e).val("")}function showHideComments(e){$j("#collapsed-comments-"+e).is(":visible")?($j("#collapsed-comments-"+e).hide(),$j("#hide-comments-"+e).html(window.showMore)):($j("#collapsed-comments-"+e).show(),$j("#hide-comments-"+e).html(window.showFewer))}function enableOnUser(){if(editor)return;$j(this).val(""),initEditor()}function initEditor(e){if(editor==0){$j("#profile-jot-text-loading").show();if(plaintext=="none"){$j("#profile-jot-text-loading").hide(),$j("#profile-jot-text").css({height:200,color:"#000"}),$j("#profile-jot-text").contact_autocomplete(baseurl+"/acl"),editor=!0,$j("a#jot-perms-icon").fancybox({transitionIn:"elastic",transitionOut:"elastic"}),$j(".jothidden").show(),typeof e!="undefined"&&e();return}tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:window.editSelect,auto_focus:"profile-jot-text",plugins:"bbcode,paste,autoresize, inlinepopups",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",gecko_spellcheck:!0,paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:window.baseURL+"/view/custom_tinymce.css",theme_advanced_path:!1,file_browser_callback:"fcFileBrowser",setup:function(t){cPopup=null,t.onKeyDown.add(function(e,t){cPopup!==null&&cPopup.onkey(t)}),t.onKeyUp.add(function(e,t){var n=tinyMCE.activeEditor.getContent();match=n.match(/@([^ \n]+)$/),match!==null?(cPopup===null&&(cPopup=new ACPopup(this,baseurl+"/acl")),cPopup.ready&&match[1]!==cPopup.searchText&&cPopup.search(match[1]),cPopup.ready||(cPopup=null)):cPopup!==null&&(cPopup.close(),cPopup=null),textlen=n.length,textlen!=0&&$j("#jot-perms-icon").is(".unlock")?$j("#profile-jot-desc").html(ispublic):$j("#profile-jot-desc").html("&nbsp;"),textlen<=140&&($j("#character-counter").removeClass("red"),$j("#character-counter").removeClass("orange"),$j("#character-counter").addClass("grey")),textlen>140&&textlen<=420&&($j("#character-counter").removeClass("grey"),$j("#character-counter").removeClass("red"),$j("#character-counter").addClass("orange")),textlen>420&&($j("#character-counter").removeClass("grey"),$j("#character-counter").removeClass("orange"),$j("#character-counter").addClass("red")),$j("#character-counter").text(textlen)}),t.onInit.add(function(t){t.pasteAsPlainText=!0,$j("#profile-jot-text-loading").hide(),$j(".jothidden").show(),typeof e!="undefined"&&e()})}}),editor=!0,$j("a#jot-perms-icon").fancybox({transitionIn:"none",transitionOut:"none"})}else typeof e!="undefined"&&e()}function msgInitEditor(){plaintext!="none"?tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:/(profile-jot-text|prvmail-text)/,plugins:"bbcode,paste",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",gecko_spellcheck:!0,paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,setup:function(e){e.onInit.add(function(e){e.pasteAsPlainText=!0;var t=e.editorId,n=$j("#"+t);typeof n.attr("tabindex")!="undefined"&&($j("#"+t+"_ifr").attr("tabindex",n.attr("tabindex")),n.attr("tabindex",null))})}}):$j("#prvmail-text").contact_autocomplete(baseurl+"/acl")}function profInitEditor(){tinyMCE.init({theme:"advanced",mode:window.editSelect,plugins:"bbcode,paste",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",gecko_spellcheck:!0,paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,setup:function(e){e.onInit.add(function(e){e.pasteAsPlainText=!0})}})}function eventInitEditor(){tinyMCE.init({theme:"advanced",mode:"textareas",plugins:"bbcode,paste",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",gecko_spellcheck:!0,paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,setup:function(e){e.onInit.add(function(e){e.pasteAsPlainText=!0})}})}function contactInitEditor(){tinyMCE.init({theme:"advanced",mode:window.editSelect,elements:"contact-edit-info",plugins:"bbcode",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_styles:"blockquote,code",gecko_spellcheck:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",content_css:baseurl+"/view/custom_tinymce.css"})}function wallInitEditor(){var e=window.editSelect;e!="none"?tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:/(profile-jot-text|prvmail-text)/,plugins:"bbcode,paste",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",gecko_spellcheck:!0,paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,setup:function(e){e.onInit.add(function(e){e.pasteAsPlainText=!0;var t=e.editorId,n=$j("#"+t);typeof n.attr("tabindex")!="undefined"&&($j("#"+t+"_ifr").attr("tabindex",n.attr("tabindex")),n.attr("tabindex",null))})}}):$j("#prvmail-text").contact_autocomplete(baseurl+"/acl")}function deleteCheckedItems(){var e="";$j(".item-select").each(function(){$j(this).is(":checked")&&(e.length!=0?e=e+","+$j(this).val():e=$j(this).val())}),$j.post("item",{dropitems:e},function(e){window.location.reload()})}function jotVideoURL(){reply=prompt(window.vidURL),reply&&reply.length&&addeditortext("[video]"+reply+"[/video]")}function jotAudioURL(){reply=prompt(window.audURL),reply&&reply.length&&addeditortext("[audio]"+reply+"[/audio]")}function jotGetLocation(){reply=prompt(window.whereAreU,$j("#jot-location").val()),reply&&reply.length&&$j("#jot-location").val(reply)}function jotShare(e){$j("#jot-popup").length!=0&&$j("#jot-popup").show(),$j("#like-rotator-"+e).show(),$j.get("share/"+e,function(t){editor||$j("#profile-jot-text").val(""),initEditor(function(){addeditortext(t),$j("#like-rotator-"+e).hide(),$j(window).scrollTop(0)})})}function linkdropper(e){var t=e.dataTransfer.types.contains("text/uri-list");t&&e.preventDefault()}function itemTag(e){reply=prompt(window.term),reply&&reply.length&&(reply=reply.replace("#",""),reply.length&&(commentBusy=!0,$j("body").css("cursor","wait"),$j.get("tagger/"+e+"?term="+reply,NavUpdate),liking=1))}function itemFiler(e){var t=$j("input").css("border-color");$j.get("filer/",function(n){$j.fancybox(n),$j("#id_term").keypress(function(){$j(this).css("border-color",t)}),$j("#select_term").change(function(){$j("#id_term").css("border-color",t)}),$j("#filer_save").click(function(t){return t.preventDefault(),reply=$j("#id_term").val(),reply&&reply.length?(commentBusy=!0,$j("body").css("cursor","wait"),$j.get("filer/"+e+"?term="+reply,NavUpdate),liking=1,$j.fancybox.close()):$j("#id_term").css("border-color","#FF0000"),!1})})}function jotClearLocation(){$j("#jot-coord").val(""),$j("#profile-nolocation-wrapper").hide()}function addeditortext(e){if(plaintext=="none"){var t=$j("#profile-jot-text").val();$j("#profile-jot-text").val(t+e)}else tinyMCE.execCommand("mceInsertRawHTML",!1,e)}$j(document).ready(function(){window.navMenuTimeout={"#network-menu-list-timeout":null,"#contacts-menu-list-timeout":null,"#system-menu-list-timeout":null,"#network-menu-list-opening":!1,"#contacts-menu-list-opening":!1,"#system-menu-list-opening":!1,"#network-menu-list-closing":!1,"#contacts-menu-list-closing":!1,"#system-menu-list-closing":!1},typeof acl=="undefined"&&(acl=new ACL(baseurl+"/acl",[window.allowCID,window.allowGID,window.denyCID,window.denyGID])),$j("#profile-jot-text").focus(enableOnUser),$j("#profile-jot-text").click(enableOnUser),$j(".nav-menu-link").hover(function(){showNavMenu($j(this).attr("rel"))},function(){hideNavMenu($j(this).attr("rel"))}),$j(".group-edit-icon").hover(function(){$j(this).addClass("icon"),$j(this).removeClass("iconspacer")},function(){$j(this).removeClass("icon"),$j(this).addClass("iconspacer")}),$j(".sidebar-group-element").hover(function(){id=$j(this).attr("id"),$j("#edit-"+id).addClass("icon"),$j("#edit-"+id).removeClass("iconspacer")},function(){id=$j(this).attr("id"),$j("#edit-"+id).removeClass("icon"),$j("#edit-"+id).addClass("iconspacer")}),$j(".savedsearchdrop").hover(function(){$j(this).addClass("drop"),$j(this).addClass("icon"),$j(this).removeClass("iconspacer")},function(){$j(this).removeClass("drop"),$j(this).removeClass("icon"),$j(this).addClass("iconspacer")}),$j(".savedsearchterm").hover(function(){id=$j(this).attr("id"),$j("#drop-"+id).addClass("icon"),$j("#drop-"+id).addClass("drophide"),$j("#drop-"+id).removeClass("iconspacer")},function(){id=$j(this).attr("id"),$j("#drop-"+id).removeClass("icon"),$j("#drop-"+id).removeClass("drophide"),$j("#drop-"+id).addClass("iconspacer")}),window.autoCompleteType=="display-head"&&$j(".comment-wwedit-wrapper textarea").contact_autocomplete(baseurl+"/acl");if(window.aclType=="event_head"){$j("#events-calendar").fullCalendar({events:baseurl+"/events/json/",header:{left:"prev,next today",center:"title",right:"month,agendaWeek,agendaDay"},timeFormat:"H(:mm)",eventClick:function(e,t,n){showEvent(e.id)},eventRender:function(e,t,n){if(e.item["author-name"]==null)return;switch(n.name){case"month":t.find(".fc-event-title").html("<img src='{0}' style='height:10px;width:10px'>{1} : {2}".format(e.item["author-avatar"],e.item["author-name"],e.title));break;case"agendaWeek":t.find(".fc-event-title").html("<img src='{0}' style='height:12px; width:12px'>{1}<p>{2}</p><p>{3}</p>".format(e.item["author-avatar"],e.item["author-name"],e.item.desc,e.item.location));break;case"agendaDay":t.find(".fc-event-title").html("<img src='{0}' style='height:24px;width:24px'>{1}<p>{2}</p><p>{3}</p>".format(e.item["author-avatar"],e.item["author-name"],e.item.desc,e.item.location))}}});var e=location.href.replace(baseurl,"").split("/");e.length>=4&&$j("#events-calendar").fullCalendar("gotoDate",e[2],e[3]-1);var t=location.hash.split("-");t.length==2&&t[0]=="#link"&&showEvent(t[1])}$j("#event-share-checkbox").change(function(){$j("#event-share-checkbox").is(":checked")?$j("#acl-wrapper").show():$j("#acl-wrapper").hide()}).trigger("change"),(window.aclType=="settings-head"||window.aclType=="photos_head"||window.aclType=="event_head")&&$j("#contact_allow, #contact_deny, #group_allow, #group_deny").change(function(){var e;$j("#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected").each(function(){e=$j(this).text(),$j("#jot-perms-icon").removeClass("unlock").addClass("lock"),$j("#jot-public").hide()}),e==null&&($j("#jot-perms-icon").removeClass("lock").addClass("unlock"),$j("#jot-public").show())}).trigger("change");switch(window.autocompleteType){case"msg-header":var n=$j("#recip").autocomplete({serviceUrl:baseurl+"/acl",minChars:2,width:350,onSelect:function(e,t){$j("#recip-complete").val(t)}});break;case"contacts-head":var n=$j("#contacts-search").autocomplete({serviceUrl:baseurl+"/acl",minChars:2,width:350});n.setOptions({params:{type:"a"}});break;default:}if(typeof window.AjaxUpload!="undefined")switch(window.ajaxType){case"jot-header":var r=new window.AjaxUpload("wall-image-upload",{action:"wall_upload/"+window.nickname,name:"userfile",onSubmit:function(e,t){$j("#profile-rotator").show()},onComplete:function(e,t){addeditortext(t),$j("#profile-rotator").hide()}}),i=new window.AjaxUpload("wall-file-upload",{action:"wall_attach/"+window.nickname,name:"userfile",onSubmit:function(e,t){$j("#profile-rotator").show()},onComplete:function(e,t){addeditortext(t),$j("#profile-rotator").hide()}});break;case"msg-header":var r=new window.AjaxUpload("prvmail-upload",{action:"wall_upload/"+window.nickname,name:"userfile",onSubmit:function(e,t){$j("#profile-rotator").show()},onComplete:function(e,t){tinyMCE.execCommand("mceInsertRawHTML",!1,t),$j("#profile-rotator").hide()}});break;default:}}),$j(function(){$j("nav").bind("nav-update",function(e,t){var n=$j("#pending-update"),r=$j(t).find("register").text();r=="0"?(r="",n.hide()):n.show(),n.html(r)})}),$j(function(){$j("#cnftheme").fancybox({width:800,autoDimensions:!1,onStart:function(){var e=$j("#id_theme :selected").val(),t=$j("#id_theme_mobile :selected").val();$j("#cnftheme").attr("href",baseurl+"/admin/themes/"+e)},onComplete:function(){$j("div#fancybox-content form").submit(function(e){var t=$j(this).attr("action"),n={};return $j(this).find("input").each(function(){n[$j(this).attr("name")]=$j(this).val()}),$j(this).find("select").each(function(){n[$j(this).attr("name")]=$j(this).children(":selected").val()}),console.log(":)",t,n),$j.post(t,n,function(e){timer&&clearTimeout(timer),NavUpdate(),$j.fancybox.close()}),!1})}})}),typeof window.photoEdit!="undefined"&&$j(document).keydown(function(e){window.prevLink!=""&&e.ctrlKey&&e.keyCode==37&&(e.preventDefault(),window.location.href=window.prevLink),window.nextLink!=""&&e.ctrlKey&&e.keyCode==39&&(e.preventDefault(),window.location.href=window.nextLink)});switch(window.ajaxType){case"jot-header":function jotGetLink(){reply=prompt(window.linkURL),reply&&reply.length&&(reply=bin2hex(reply),$j("#profile-rotator").show(),$j.get("parse_url?binurl="+reply,function(e){addeditortext(e),$j("#profile-rotator").hide()}))}function linkdrop(e){var t=e.dataTransfer.getData("text/uri-list");e.target.textContent=t,e.preventDefault(),t&&t.length&&(t=bin2hex(t),$j("#profile-rotator").show(),$j.get("parse_url?binurl="+t,function(e){editor||$j("#profile-jot-text").val(""),initEditor(function(){addeditortext(e),$j("#profile-rotator").hide()})}))}break;case"msg-header":case"wallmsg-header":function jotGetLink(){reply=prompt(window.linkURL),reply&&reply.length&&($j("#profile-rotator").show(),$j.get("parse_url?url="+reply,function(e){tinyMCE.execCommand("mceInsertRawHTML",!1,e),$j("#profile-rotator").hide()}))}function linkdrop(e){var t=e.dataTransfer.getData("text/uri-list");e.target.textContent=t,e.preventDefault(),t&&t.length&&($j("#profile-rotator").show(),$j.get("parse_url?url="+t,function(e){tinyMCE.execCommand("mceInsertRawHTML",!1,e),$j("#profile-rotator").hide()}))}break;default:}var editor=!1,textlen=0,plaintext=window.editSelect,ispublic=window.isPublic;typeof window.geoTag=="function"&&window.geoTag();
\ No newline at end of file
index 5b82c11d3b58d41e0ea293c2ab35afd83a09ecf1..1c8c1cd45bb810b5fc9fea8896e16a0efdc146eb 100644 (file)
@@ -1,6 +1,7 @@
 body {
        font-family: helvetica,arial,freesans,clean,sans-serif;
        font-size: 14px;
+       /*background-image: none;*/
        background-color: #ffffff;
        color: #505050;/* ZP Change*/
        margin: 0px;
@@ -11,6 +12,26 @@ a:hover {text-decoration: underline; }
 
 img { border :0px; }
 
+nav {
+       display: none;
+}
+
+/* popup notifications */
+div.jGrowl div.notice {
+  background: #511919 url("../../../images/icons/48/notice.png") no-repeat 5px center;
+  color: #ffffff;
+  padding-left: 58px;
+}
+div.jGrowl div.info {
+  background: #364e59 url("../../../images/icons/48/info.png") no-repeat 5px center;
+  color: #ffffff;
+  padding-left: 58px;
+}
+#jGrowl.top-right {
+       top: 15px;
+       right: 15px;
+}
+
 .login-button {
        margin-top: 110px;
 }
@@ -19,7 +40,7 @@ img.login-button-image {
        max-width: 350px;
 }
 
-.section-wrapper {
+div.section-wrapper {
        position: relative;
        width: 800px;
        margin-left: auto;
@@ -28,7 +49,8 @@ img.login-button-image {
 }
 
 .login-form {
-       margin-top: 200px;
+       padding-top: 200px;
+       margin-bottom: 50px;
 }
 
 .register-form {
@@ -39,7 +61,13 @@ img.login-button-image {
        margin-top: 170px;
 }
 
+.field {
+       margin-bottom: 2px;
+       padding-bottom: 0px;
+}
+
 .field label {
+       width: auto;
        position: absolute;
        margin-left: 0px;
        font-weight: 700;
@@ -50,7 +78,8 @@ img.login-button-image {
        width: 200px;
 }
 
-.openid input {
+/*.openid input {*/
+#id_openid_url, .openid input {
        background: url(login-bg.gif) no-repeat;
        background-position: 0 50%;
        width: 182px;
diff --git a/view/theme/frost/login_head.tpl b/view/theme/frost/login_head.tpl
new file mode 100644 (file)
index 0000000..cd140d6
--- /dev/null
@@ -0,0 +1,2 @@
+<link rel="stylesheet" href="$baseurl/view/theme/frost/login-style.css" type="text/css" media="all" />
+
index 6ae19650e02bf5aea7875a4ac3555dfe099e0758..89e1168ab7d5228a49825967ec6fd450edcf30fe 100644 (file)
                <a id="nav-register-link" class="nav-load-page-link $nav.register.2 $sel.register" href="$nav.register.0" title="$nav.register.3" >$nav.register.1</a>
                {{ endif }}
 
+               {{ if $nav.settings }}
+               <li><a id="nav-settings-link" class="$nav.settings.2 nav-load-page-link" href="$nav.settings.0" title="$nav.settings.3">$nav.settings.1</a></li>
+               {{ endif }}
+
                {{ if $nav.manage }}
                <li>
                <a id="nav-manage-link" class="nav-load-page-link $nav.manage.2 $sel.manage" href="$nav.manage.0" title="$nav.manage.3">$nav.manage.1</a>
                </li>
                {{ endif }}
 
-               {{ if $nav.settings }}
-               <li><a id="nav-settings-link" class="$nav.settings.2 nav-load-page-link" href="$nav.settings.0" title="$nav.settings.3">$nav.settings.1</a></li>
-               {{ endif }}
-
                {{ if $nav.profiles }}
                <li><a id="nav-profiles-link" class="$nav.profiles.2 nav-load-page-link" href="$nav.profiles.0" title="$nav.profiles.3" >$nav.profiles.1</a></li>
                {{ endif }}
diff --git a/view/theme/frost/posted_date_widget.tpl b/view/theme/frost/posted_date_widget.tpl
new file mode 100644 (file)
index 0000000..ce70b74
--- /dev/null
@@ -0,0 +1,9 @@
+<div id="datebrowse-sidebar" class="widget">
+       <h3>$title</h3>
+<script>function dateSubmit(dateurl) { window.location.href = dateurl; } </script>
+<select id="posted-date-selector" name="posted-date-select" onchange="dateSubmit($j(this).val());" size="$size">
+{{ for $dates as $d }}
+<option value="$url/$d.1/$d.2" >$d.0</option>
+{{ endfor }}
+</select>
+</div>
index 3bc9ad1cd034cfa091ce50ca3a0281e8b12486d1..fa06ef7eda9f17bb37a24e8dab1ba05294c69f8a 100644 (file)
@@ -511,8 +511,10 @@ div.wall-item-content-wrapper.shiny {
        margin-top: 10px;
 }
 
-
-#login_standard {
+.login-form {
+       margin-top: -150px;
+}
+/*#login_standard {
        width: 210px;
        float: left;
 }
@@ -541,9 +543,9 @@ div.wall-item-content-wrapper.shiny {
 }
 
 #login-submit-button {
-/*     margin-top: 10px; */
+       margin-top: 10px; 
        margin-left: 200px;
-}
+}*/
 
 
 input#dfrn-url {
@@ -1294,7 +1296,7 @@ input#dfrn-url {
 .wall-item-content {
        margin-left: 10px;
        padding-right: 1em;
-       max-height: 500px;
+/*     max-height: 500px;*/
        overflow: auto;
 }
 
@@ -1302,6 +1304,14 @@ input#dfrn-url {
        max-width: 100%;
 }
 
+.divgrow-showmore {
+       display: block;
+       clear: both;
+       text-align: center;
+       outline: 0;
+       border-top: 1px dotted #888;
+}
+
 
 
 .wall-item-title {
@@ -1363,6 +1373,12 @@ input#dfrn-url {
        margin-left: 50px;
 }
 
+.comment-wwedit-wrapper.comment {
+       width: 300px;
+       margin-left: 150px;
+       border-radius: 10px;
+}
+
 .comment-edit-photo {
        margin-top: 10px;
        margin-left: 10px;
@@ -1373,6 +1389,9 @@ input#dfrn-url {
 .comment-edit-photo img {
        width: 25px;
 }
+.comment .comment-edit-photo {
+       width: 50px;
+}
 .comment-edit-text-empty, .comment-edit-text-full {
        float: left;
        margin-top: 10px;
@@ -1398,6 +1417,16 @@ input#dfrn-url {
        overflow: auto;
 }
 
+.comment .comment-edit-text-empty {
+       height: 1.5em;
+       width: 150px;
+}
+
+.comment .comment-edit-text-full {
+       margin-left: 10px;
+       width: 275px;
+}
+
 .comment-edit-text-end {
        clear: both;
 }
@@ -1405,6 +1434,9 @@ input#dfrn-url {
 .comment-edit-submit {
        margin: 10px 0px 10px 110px;
 }
+.comment .comment-edit-submit {
+       margin-left: 30px;
+}
 
 #profile-jot-plugin-wrapper,
 #profile-jot-submit-wrapper {
@@ -1894,7 +1926,7 @@ input#dfrn-url {
 
 
 #acl-wrapper {
-       width: 690px;
+       width: 580px;
        float:left;
 }
 #acl-search {
@@ -1935,7 +1967,7 @@ input#dfrn-url {
 }
 .acl-list-item {
        display: block;
-       width: 150px;
+       width: 170px;
        height: 30px;
        border: 1px solid #cccccc;
        margin: 5px;
@@ -1949,10 +1981,10 @@ input#dfrn-url {
 }
 .acl-list-item p { height: 12px; font-size: 10px; margin: 0px; padding: 2px 0px 1px; overflow: hidden;}
 .acl-list-item a { 
-       font-size: 8px;
+       font-size: 10px; /* 8px; */
        display: block;
-       width: 40px;
-       height: 10px;
+       width: 50px;
+       height: 12px;
        float: left;
        color: #999999;
        background-color: #cccccc;
@@ -3514,13 +3546,19 @@ aside input[type='text'] {
 }
 
 .icon.dim { opacity: 0.3;filter:alpha(opacity=30); }
-[class^="comment-edit-bb"] {
+/*[class^="comment-edit-bb"] {*/
+.comment-edit-bb {
        list-style: none;
        display: none;
        margin: 0px 0 -5px 60px;
        width: 75%;
 }
-[class^="comment-edit-bb"] > li {
+.comment .comment-edit-bb {
+       width: 300px;
+       margin: 0px;
+}
+/*[class^="comment-edit-bb"] > li {*/
+.comment-edit-bb > li {
        display: inline-block;
        margin: 10px 10px 0 0;
        visibility: none;
index 24dee31d0dd6c16d2b9cd69489db9906bcfd4199..795f69b71447a53fc8baab8c258cf134cc2da250 100644 (file)
@@ -4,9 +4,9 @@
  * Name: Frost
  * Description: Like frosted glass
  * Credits: Navigation icons taken from http://iconza.com. Other icons taken from http://thenounproject.com, including: Like, Dislike, Black Lock, Unlock, Pencil, Tag, Camera, Paperclip (Marie Coons), Folder (Sergio Calcara), Chain-link (Andrew Fortnum), Speaker (Harold Kim), Quotes (Henry Ryder), Video Camera (Anas Ramadan), and Left Arrow, Right Arrow, and Delete X (all three P.J. Onori). All under Attribution (CC BY 3.0). Others from The Noun Project are public domain or No Rights Reserved (CC0).
- * Version: Version 0.2.2
- * Author: Zach P <windforest@f.shmuz.in>
- * Maintainer: Zach P <windforest@f.shmuz.in>
+ * Version: Version 0.2.8
+ * Author: Zach P <techcity@f.shmuz.in>
+ * Maintainer: Zach P <techcity@f.shmuz.in>
  */
 
 $a->theme_info = array();
@@ -21,4 +21,8 @@ function frost_init(&$a) {
        if( $a->module === 'login' )
                $a->page['end'] .= '<script type="text/javascript"> $j(document).ready(function() { $j("#id_" + window.loginName).focus();} );</script>';
 
+       $a->videowidth = 400;
+       $a->videoheight = 330;
+       $a->theme_thread_allow = false;
+
 }
index 6903f6e3037064ee023d1c20df319beb8123c1d1..fb9290f12ced5bb8b65bafcd1e1628bf9f27600f 100644 (file)
@@ -1,6 +1,6 @@
 <a name="$item.id" ></a>
-<!--<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >-->
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<!--<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >-->
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
@@ -24,7 +24,7 @@
                </div>
                <!--<div class="wall-item-author">-->
                                <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a>
-                               <div class="wall-item-ago"  id="wall-item-ago-$item.id">$item.ago</div>
+                               <div class="wall-item-ago" id="wall-item-ago-$item.id" title="$item.localtime" >$item.ago</div>
                                
                <!--</div>-->
                <div class="wall-item-content" id="wall-item-content-$item.id" >
@@ -75,5 +75,5 @@
        $item.comment
        <!--</div>-->
 
-<!--<div class="wall-item-outside-wrapper-end$item.indent" ></div>-->
+<!--<div class="wall-item-outside-wrapper-end $item.indent" ></div>-->
 <!--</div>-->
diff --git a/view/theme/frost/wall_thread.tpl b/view/theme/frost/wall_thread.tpl
new file mode 100644 (file)
index 0000000..69f6c4c
--- /dev/null
@@ -0,0 +1,104 @@
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+       <span id="hide-comments-total-$item.id" class="hide-comments-total">$item.num_comments</span> <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span>
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+<div id="tread-wrapper-$item.id" class="tread-wrapper $item.toplevel">
+<a name="$item.id" ></a>
+<!--<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >-->
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
+               <div class="wall-item-info" id="wall-item-info-$item.id">
+                       <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
+                                onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
+                                onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
+                                       <img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" />
+                               </a>
+                               <span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
+                               <!--<div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">-->
+                                       <ul class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
+                                               $item.item_photo_menu
+                                       </ul>
+                               <!--</div>-->
+                       </div>
+                       <!--<div class="wall-item-photo-end"></div>-->
+                       <div class="wall-item-wrapper" id="wall-item-wrapper-$item.id" >
+                               {{ if $item.lock }}<!--<div class="wall-item-lock">--><img src="images/lock_icon.gif" class="wall-item-lock lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /><!--</div>-->
+                               {{ else }}<div class="wall-item-lock"></div>{{ endif }} 
+                               <div class="wall-item-location" id="wall-item-location-$item.id">$item.location</div>                           
+                       </div>
+               </div>
+               <!--<div class="wall-item-author">-->
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a>
+                               <div class="wall-item-ago" id="wall-item-ago-$item.id" title="$item.localtime" >$item.ago</div>
+                               
+               <!--</div>-->
+               <div class="wall-item-content" id="wall-item-content-$item.id" >
+                       <div class="wall-item-title" id="wall-item-title-$item.id">$item.title</div>
+                       <!--<div class="wall-item-title-end"></div>-->
+                       <div class="wall-item-body" id="wall-item-body-$item.id" >$item.body
+<!--                                   <div class="body-tag">-->
+                                               {{ for $item.tags as $tag }}
+                                                       <span class='body-tag tag'>$tag</span>
+                                               {{ endfor }}
+<!--                                   </div>-->
+                       </div>
+               </div>
+
+               <div class="wall-item-tools" id="wall-item-tools-$item.id">
+                       {{ if $item.vote }}
+                       <div class="wall-item-like-buttons" id="wall-item-like-buttons-$item.id">
+                               <a href="#" class="icon like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false"></a>
+                               <a href="#" class="icon dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
+                               {{ if $item.vote.share }}<a href="#" class="icon recycle wall-item-share-buttons" title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>{{ endif }}
+                               <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+                       </div>
+                       {{ endif }}
+                       {{ if $item.plink }}
+                               <!--<div class="wall-item-links-wrapper">--><a href="$item.plink.href" title="$item.plink.title" target="external-link" class="wall-item-links-wrapper icon remote-link$item.sparkle"></a><!--</div>-->
+                       {{ endif }}
+                       {{ if $item.edpost }}
+                               <a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
+                       {{ endif }}
+                        
+                       {{ if $item.star }}
+                       <a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item icon $item.isstarred" title="$item.star.toggle"></a>
+                       <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item icon tagged" title="$item.star.tagger"></a>
+                       {{ endif }}
+                       {{ if $item.filer }}
+                       <a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item filer-icon" title="$item.filer"></a>
+                       {{ endif }}     
+<!--                   <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$item.id" >-->
+                               {{ if $item.drop.dropping }}<a href="item/drop/$item.id" onclick="return confirmDelete();" class="wall-item-delete-wrapper icon drophide" title="$item.drop.delete" id="wall-item-delete-wrapper-$item.id" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
+<!--                   </div>-->
+                               {{ if $item.drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$item.drop.select" class="item-select" name="itemselected[]" value="$item.id" />{{ endif }}
+
+                       <!--<div class="wall-item-delete-end"></div>-->
+               </div>
+       </div>
+       <!--<div class="wall-item-wrapper-end"></div>-->
+       <div class="wall-item-like $item.indent" id="wall-item-like-$item.id">$item.like</div>
+       <div class="wall-item-dislike $item.indent" id="wall-item-dislike-$item.id">$item.dislike</div>
+
+       {{ if $item.threaded }}
+       {{ if $item.comment }}
+       <!--<div class="wall-item-comment-wrapper $item.indent" >-->
+               $item.comment
+       <!--</div>-->
+       {{ endif }}
+       {{ endif }}
+
+<!--<div class="wall-item-outside-wrapper-end $item.indent" ></div>-->
+<!--</div>-->
+{{ for $item.children as $item }}
+       {{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+{{ if $item.flatten }}
+<!--<div class="wall-item-comment-wrapper" >-->
+       $item.comment
+<!--</div>-->
+{{ endif }}
+</div>
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
index 8260517c8b82caac0a530399b60b2306a9c64d80..4ef81686e7ccc197564f4a36b58447974b3ec2f3 100644 (file)
@@ -1,6 +1,6 @@
 <a name="$item.id" ></a>
-<!--<div class="wall-item-outside-wrapper$item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >-->
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<!--<div class="wall-item-outside-wrapper $item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >-->
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info wallwall" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
                                <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
                        </div>
                        <!--<div class="wall-item-photo-end"></div>-->
                        <div class="wall-item-wrapper" id="wall-item-wrapper-$item.id" >
-                               {{ if $item.lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /></div>
+                               {{ if $item.lock }}<!--<div class="wall-item-lock">--><img src="images/lock_icon.gif" class="wall-item-lock lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /><!--</div>-->
                                {{ else }}<div class="wall-item-lock"></div>{{ endif }} 
                                <div class="wall-item-location" id="wall-item-location-$item.id">$item.location</div>
                        </div>
                </div>
                <!--<div class="wall-item-author">-->
                                <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a> $item.to <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-name-link"><span class="wall-item-name$item.osparkle" id="wall-item-ownername-$item.id">$item.owner_name</span></a> $item.vwall<br />
-                               <div class="wall-item-ago"  id="wall-item-ago-$item.id">$item.ago</div>                         
+                               <div class="wall-item-ago"  id="wall-item-ago-$item.id" title="$item.localtime" >$item.ago</div>
                <!--</div>-->
                <div class="wall-item-content" id="wall-item-content-$item.id" >
                        <div class="wall-item-title" id="wall-item-title-$item.id">$item.title</div>
@@ -67,7 +67,7 @@
                        {{ endif }}                     
                        
                        <!--<div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$item.id" >-->
-                               {{ if $item.drop.dropping }}<a href="item/drop/$item.id" onclick="return confirmDelete();" class="wall-item-delete-wrapper icon drophide" title="$item.drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
+                               {{ if $item.drop.dropping }}<a href="item/drop/$item.id" onclick="return confirmDelete();" class="wall-item-delete-wrapper icon drophide" title="$item.drop.delete" id="wall-item-delete-wrapper-$item.id" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
                        <!--</div>-->
                                {{ if $item.drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$item.drop.select" class="item-select" name="itemselected[]" value="$item.id" />{{ endif }}
                        <!--<div class="wall-item-delete-end"></div>-->
@@ -81,6 +81,6 @@
        $item.comment
        <!--</div>-->
 
-<!--<div class="wall-item-outside-wrapper-end$item.indent" ></div>-->
+<!--<div class="wall-item-outside-wrapper-end $item.indent" ></div>-->
 <!--</div>-->
 
diff --git a/view/theme/frost/wallwall_thread.tpl b/view/theme/frost/wallwall_thread.tpl
new file mode 100644 (file)
index 0000000..0039e8d
--- /dev/null
@@ -0,0 +1,108 @@
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+       <span id="hide-comments-total-$item.id" class="hide-comments-total">$item.num_comments</span> <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span>
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+<div id="tread-wrapper-$item.id" class="tread-wrapper $item.toplevel">
+<a name="$item.id" ></a>
+<!--<div class="wall-item-outside-wrapper $item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >-->
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
+               <div class="wall-item-info wallwall" id="wall-item-info-$item.id">
+                       <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
+                               <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
+                               <img src="$item.owner_photo" class="wall-item-photo$item.osparkle" id="wall-item-ownerphoto-$item.id" style="height: 80px; width: 80px;" alt="$item.owner_name" /></a>
+                       </div>
+                       <div class="wall-item-arrowphoto-wrapper" ><img src="images/larrow.gif" alt="$item.wall" /></div>
+                       <div class="wall-item-photo-wrapper wwfrom" id="wall-item-photo-wrapper-$item.id" 
+                               onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')"
+                onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
+                               <img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" /></a>
+                               <span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
+<!--                <div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">-->
+                    <ul class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
+                        $item.item_photo_menu
+                    </ul>
+<!--                </div>-->
+
+                       </div>
+                       <!--<div class="wall-item-photo-end"></div>-->
+                       <div class="wall-item-wrapper" id="wall-item-wrapper-$item.id" >
+                               {{ if $item.lock }}<!--<div class="wall-item-lock">--><img src="images/lock_icon.gif" class="wall-item-lock lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /><!--</div>-->
+                               {{ else }}<div class="wall-item-lock"></div>{{ endif }} 
+                               <div class="wall-item-location" id="wall-item-location-$item.id">$item.location</div>
+                       </div>
+               </div>
+               <!--<div class="wall-item-author">-->
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a> $item.to <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-name-link"><span class="wall-item-name$item.osparkle" id="wall-item-ownername-$item.id">$item.owner_name</span></a> $item.vwall<br />
+                               <div class="wall-item-ago"  id="wall-item-ago-$item.id" title="$item.localtime" >$item.ago</div>
+               <!--</div>-->
+               <div class="wall-item-content" id="wall-item-content-$item.id" >
+                       <div class="wall-item-title" id="wall-item-title-$item.id">$item.title</div>
+                       <!--<div class="wall-item-title-end"></div>-->
+                       <div class="wall-item-body" id="wall-item-body-$item.id" >$item.body
+                                       <!--<div class="body-tag">-->
+                                               {{ for $item.tags as $tag }}
+                                                       <span class='body-tag tag'>$tag</span>
+                                               {{ endfor }}
+                                       <!--</div>-->
+                       </div>
+               </div>
+               <div class="wall-item-tools" id="wall-item-tools-$item.id">
+                       {{ if $item.vote }}
+                       <div class="wall-item-like-buttons" id="wall-item-like-buttons-$item.id">
+                               <a href="#" class="icon like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false"></a>
+                               <a href="#" class="icon dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
+                               {{ if $item.vote.share }}<a href="#" class="icon recycle wall-item-share-buttons" title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>{{ endif }}
+                               <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+                       </div>
+                       {{ endif }}
+                       {{ if $item.plink }}
+                               <!--<div class="wall-item-links-wrapper">--><a href="$item.plink.href" title="$item.plink.title" target="external-link" class="wall-item-links-wrapper icon remote-link$item.sparkle"></a><!--</div>-->
+                       {{ endif }}
+                       {{ if $item.edpost }}
+                               <a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
+                       {{ endif }}
+                        
+                       {{ if $item.star }}
+                       <a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item icon $item.isstarred" title="$item.star.toggle"></a>
+                       <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item icon tagged" title="$item.star.tagger"></a>
+                       {{ endif }}
+                       {{ if $item.filer }}
+                       <a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item filer-icon" title="$item.filer"></a>
+                       {{ endif }}                     
+                       
+                       <!--<div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$item.id" >-->
+                               {{ if $item.drop.dropping }}<a href="item/drop/$item.id" onclick="return confirmDelete();" class="wall-item-delete-wrapper icon drophide" title="$item.drop.delete" id="wall-item-delete-wrapper-$item.id" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
+                       <!--</div>-->
+                               {{ if $item.drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$item.drop.select" class="item-select" name="itemselected[]" value="$item.id" />{{ endif }}
+                       <!--<div class="wall-item-delete-end"></div>-->
+               </div>
+       </div>  
+       <!--<div class="wall-item-wrapper-end"></div>-->
+       <div class="wall-item-like $item.indent" id="wall-item-like-$item.id">$item.like</div>
+       <div class="wall-item-dislike $item.indent" id="wall-item-dislike-$item.id">$item.dislike</div>
+
+       {{ if $item.threaded }}
+       {{ if $item.comment }}
+       <!--<div class="wall-item-comment-wrapper $item.indent" >-->
+               $item.comment
+       <!--</div>-->
+       {{ endif }}
+       {{ endif }}
+
+<!--<div class="wall-item-outside-wrapper-end $item.indent" ></div>-->
+<!--</div>-->
+{{ for $item.children as $item }}
+       {{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+{{ if $item.flatten }}
+<!--<div class="wall-item-comment-wrapper" >-->
+       $item.comment
+<!--</div>-->
+{{ endif }}
+</div>
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
+
index ea24d95cc33e80e9060525582ca6e00989145747..7d1d7550b2f2b10e7835e297f2f901542d5ac80c 100644 (file)
@@ -10,8 +10,8 @@
                                <div class="comment-edit-photo" id="comment-edit-photo-$id" >
                                        <a class="comment-edit-photo-link" href="$mylink" title="$mytitle"><img class="my-comment-photo" src="$myphoto" alt="$mytitle" title="$mytitle" /></a>
                                </div>
-                               <div class="comment-edit-photo-end"></div>
-                               <ul class="comment-edit-bb-$id">
+                               <ul id="comment-edit-bb-$id"
+                                       class="comment-edit-bb">
                                        <li><a class="editicon boldbb shadow"
                                                style="cursor: pointer;" title="$edbold"
                                                onclick="insertFormatting('$comment','b', $id);"></a></li>
                                                style="cursor: pointer;" title="$edvideo"
                                                onclick="insertFormatting('$comment','video', $id);"></a></li>
                                </ul>   
-                               <div class="comment-edit-bb-end"></div>
-                               <textarea id="comment-edit-text-$id" class="comment-edit-text-empty" name="body" onFocus="commentOpen(this,$id);cmtBbOpen($id);" onBlur="commentClose(this,$id);" >$comment</textarea>                  
+                               <textarea id="comment-edit-text-$id" 
+                                       class="comment-edit-text-empty" 
+                                       name="body" 
+                                       onFocus="commentOpen(this,$id) && cmtBbOpen($id);" 
+                                       onBlur="commentClose(this,$id) && cmtBbClose($id);" >$comment</textarea>
                                {{ if $qcomment }}
                                        <select id="qcomment-select-$id" name="qcomment-$id" class="qcomment" onchange="qCommentInsert(this,$id);" >
                                        <option value=""></option>
                                        </select>
                                {{ endif }}
 
-                               <div class="comment-edit-text-end"></div>
                                <div class="comment-edit-submit-wrapper" id="comment-edit-submit-wrapper-$id" style="display: none;" >
                                        <input type="submit" onclick="post_comment($id); return false;" id="comment-edit-submit-$id" class="comment-edit-submit" name="submit" value="$submit" />
                                        <span onclick="preview_comment($id);" id="comment-edit-preview-link-$id" class="fakelink">$preview</span>
                                        <div id="comment-edit-preview-$id" class="comment-edit-preview" style="display:none;"></div>
                                </div>
 
-                               <div class="comment-edit-end"></div>
                        </form>
 
                </div>
index 42fdd34bb7de7819c259f027715a9e4c1f508073..5c9de375318ec5f77c863d0af83d921a6e4661ed 100644 (file)
@@ -80,6 +80,9 @@
 @ItemColor: @Grey5;
 @ItemColorDimmed: @Grey3;
 
+@BlockquoteBackgroundColor: #FFFFFF;
+@BlockquoteBorderColor: #e6e6e6;
+
 @CommentBoxEmptyColor: @Grey3;
 @CommentBoxEmptyBorderColor: @Grey3;
 @CommentBoxFullColor: @Grey5;
index 087d9c746f1d8f9e2ee32b3434c86b0a0d2f1228..0bb2cd10ebc7cbe3dc2006eb9517630169372dc7 100644 (file)
@@ -387,6 +387,12 @@ a:hover {
   color: #005c94;
   text-decoration: underline;
 }
+blockquote {
+  background: #ffffff;
+  padding: 1em;
+  margin-left: 1em;
+  border-left: 1em solid #e6e6e6;
+}
 code {
   font-family: Courier, monospace;
   white-space: pre;
@@ -398,6 +404,9 @@ code {
   padding: 10px;
   margin-top: 20px;
 }
+textarea {
+  font-size: 20px;
+}
 #panel {
   position: absolute;
   width: 10em;
@@ -1063,15 +1072,19 @@ section {
   padding: 0.3em;
 }
 .wall-item-comment-wrapper .comment-edit-text-full {
-  font-size: 14px;
+  font-size: 20px;
   height: 4em;
   color: #2d2d2d;
   border: 1px solid #2d2d2d;
 }
+.threaded .wall-item-comment-wrapper {
+  margin-left: 0px;
+}
 .comment-edit-preview {
   width: 710px;
   border: 1px solid #2d2d2d;
   margin-top: 10px;
+  background-color: #fce94f;
 }
 .comment-edit-preview .contact-photo {
   width: 32px;
@@ -1088,12 +1101,17 @@ section {
   padding-left: 12px;
 }
 .comment-edit-preview .wall-item-container {
-  width: 700px;
+  width: 90%;
 }
 .comment-edit-preview .tread-wrapper {
-  width: 700px;
+  width: 90%;
   padding: 0;
   margin: 10px 0;
+  background-color: #fce94f;
+  border-bottom: 0px;
+}
+.comment-edit-preview .wall-item-conv {
+  display: none;
 }
 .shiny {
   border-right: 10px solid #fce94f;
@@ -1139,6 +1157,68 @@ section {
   width: 25px;
   height: 25px;
 }
+/* threaded comments */
+.children {
+  margin-top: 1em;
+}
+.children .hide-comments-outer {
+  margin-left: 60px;
+}
+.children .wwto {
+  display: none;
+}
+.children .comment-edit-preview {
+  width: 660px;
+}
+.children .comment-edit-preview .wall-item-container {
+  width: 610px;
+}
+.children .children {
+  margin-left: 40px;
+}
+.children .children .wall-item-container {
+  width: 710px;
+}
+.children .children .comment-edit-preview {
+  width: 620px;
+}
+.children .children .comment-edit-preview .wall-item-container {
+  width: 620px;
+}
+.children .children .children .wall-item-container {
+  width: 670px;
+}
+.children .children .children .comment-edit-preview {
+  width: 580px;
+}
+.children .children .children .comment-edit-preview .wall-item-container {
+  width: 580px;
+}
+.children .children .children .children .wall-item-container {
+  width: 630px;
+}
+.children .children .children .children .comment-edit-preview {
+  width: 540px;
+}
+.children .children .children .children .comment-edit-preview .wall-item-container {
+  width: 540px;
+}
+.children .children .children .children .children .wall-item-container {
+  width: 590px;
+}
+.children .children .children .children .children .comment-edit-preview {
+  width: 500px;
+}
+.children .children .children .children .children .comment-edit-preview .wall-item-container {
+  width: 500px;
+}
+.children .children .children .children .children .children {
+  margin-left: 0px;
+}
+.children .children .children .children .children .children .hide-comments-outer {
+  margin-left: 0px;
+}
+/*.threaded .hide-comments-outer { margin-left: 20px; }*/
 span[id^="showmore-teaser"] {
   background: url("showmore-bg.jpg") no-repeat center bottom;
 }
@@ -1235,6 +1315,9 @@ span[id^="showmore-wrap"] {
   border: 1px solid #999999;
   padding: 0.3em;
 }
+#jot .profile-jot-text:focus {
+  font-size: 20px;
+}
 #jot #jot-tools {
   margin: 0px;
   padding: 0px;
@@ -1975,25 +2058,23 @@ footer {
   opacity: 0.3;
   filter: alpha(opacity=30);
 }
-[class^="comment-edit-bb"] {
+.comment-edit-bb {
   list-style: none;
   display: none;
-  margin: 0px 0 0px 60px;
+  margin: 0px;
+  padding: 0px;
   width: 75%;
 }
-[class^="comment-edit-bb"] > li {
+.comment-edit-bb > li {
   display: inline-block;
   margin: 10px 10px 0 0;
   visibility: none;
 }
-[class^="comment-edit-bb-end"] {
-  clear: both;
-}
 .editicon {
   display: inline-block;
   width: 16px;
   height: 16px;
-  background-image: url(bbedit.png);
+  background-image: url(icons/bbedit.png);
   text-decoration: none;
 }
 .editicon :hover {
@@ -2047,28 +2128,3 @@ footer {
 .videobb:hover {
   background-position: -112px -16px;
 }
-.attachtype {
-  display: block;
-  width: 20px;
-  height: 23px;
-  float: left;
-  background-image: url('../../../images/content-types.png');
-}
-.body-attach {
-  margin-top: 10px;
-}
-.type-video {
-  background-position: 0px 0px;
-}
-.type-image {
-  background-position: -20px 0px;
-}
-.type-audio {
-  background-position: -40px 0px;
-}
-.type-text {
-  background-position: -60px 0px;
-}
-.type-unkn {
-  background-position: -80px 0px;
-}
diff --git a/view/theme/quattro/experimental b/view/theme/quattro/experimental
deleted file mode 100644 (file)
index e69de29..0000000
index 1f1df4c55d007108e4f892a4dd44c634132593a4..f14c636331b277ca172824e632b069184764c1d6 100644 (file)
@@ -78,6 +78,9 @@
 @ThreadBottomBorderColor: @Grey2;
 @ShinyBorderColor: @Green4;
 
+@BlockquoteBackgroundColor: #FFFFFF;
+@BlockquoteBorderColor: #e6e6e6;
+
 @CommentBoxEmptyColor: @Grey3;
 @CommentBoxEmptyBorderColor: @Grey3;
 @CommentBoxFullColor: @Grey5;
index 9c28473c616d22c27c7623c6b8eaeecd819ff254..4897471eacde6404b54d979c75fb7f77010b6abc 100644 (file)
@@ -387,6 +387,12 @@ a:hover {
   color: #009100;
   text-decoration: underline;
 }
+blockquote {
+  background: #ffffff;
+  padding: 1em;
+  margin-left: 1em;
+  border-left: 1em solid #e6e6e6;
+}
 code {
   font-family: Courier, monospace;
   white-space: pre;
@@ -398,6 +404,9 @@ code {
   padding: 10px;
   margin-top: 20px;
 }
+textarea {
+  font-size: 20px;
+}
 #panel {
   position: absolute;
   width: 10em;
@@ -1063,15 +1072,19 @@ section {
   padding: 0.3em;
 }
 .wall-item-comment-wrapper .comment-edit-text-full {
-  font-size: 14px;
+  font-size: 20px;
   height: 4em;
   color: #2d2d2d;
   border: 1px solid #2d2d2d;
 }
+.threaded .wall-item-comment-wrapper {
+  margin-left: 0px;
+}
 .comment-edit-preview {
   width: 710px;
   border: 1px solid #2d2d2d;
   margin-top: 10px;
+  background-color: #ddffdd;
 }
 .comment-edit-preview .contact-photo {
   width: 32px;
@@ -1088,12 +1101,17 @@ section {
   padding-left: 12px;
 }
 .comment-edit-preview .wall-item-container {
-  width: 700px;
+  width: 90%;
 }
 .comment-edit-preview .tread-wrapper {
-  width: 700px;
+  width: 90%;
   padding: 0;
   margin: 10px 0;
+  background-color: #ddffdd;
+  border-bottom: 0px;
+}
+.comment-edit-preview .wall-item-conv {
+  display: none;
 }
 .shiny {
   border-right: 10px solid #ddffdd;
@@ -1139,6 +1157,68 @@ section {
   width: 25px;
   height: 25px;
 }
+/* threaded comments */
+.children {
+  margin-top: 1em;
+}
+.children .hide-comments-outer {
+  margin-left: 60px;
+}
+.children .wwto {
+  display: none;
+}
+.children .comment-edit-preview {
+  width: 660px;
+}
+.children .comment-edit-preview .wall-item-container {
+  width: 610px;
+}
+.children .children {
+  margin-left: 40px;
+}
+.children .children .wall-item-container {
+  width: 710px;
+}
+.children .children .comment-edit-preview {
+  width: 620px;
+}
+.children .children .comment-edit-preview .wall-item-container {
+  width: 620px;
+}
+.children .children .children .wall-item-container {
+  width: 670px;
+}
+.children .children .children .comment-edit-preview {
+  width: 580px;
+}
+.children .children .children .comment-edit-preview .wall-item-container {
+  width: 580px;
+}
+.children .children .children .children .wall-item-container {
+  width: 630px;
+}
+.children .children .children .children .comment-edit-preview {
+  width: 540px;
+}
+.children .children .children .children .comment-edit-preview .wall-item-container {
+  width: 540px;
+}
+.children .children .children .children .children .wall-item-container {
+  width: 590px;
+}
+.children .children .children .children .children .comment-edit-preview {
+  width: 500px;
+}
+.children .children .children .children .children .comment-edit-preview .wall-item-container {
+  width: 500px;
+}
+.children .children .children .children .children .children {
+  margin-left: 0px;
+}
+.children .children .children .children .children .children .hide-comments-outer {
+  margin-left: 0px;
+}
+/*.threaded .hide-comments-outer { margin-left: 20px; }*/
 span[id^="showmore-teaser"] {
   background: url("showmore-bg.jpg") no-repeat center bottom;
 }
@@ -1235,6 +1315,9 @@ span[id^="showmore-wrap"] {
   border: 1px solid #999999;
   padding: 0.3em;
 }
+#jot .profile-jot-text:focus {
+  font-size: 20px;
+}
 #jot #jot-tools {
   margin: 0px;
   padding: 0px;
@@ -1975,25 +2058,23 @@ footer {
   opacity: 0.3;
   filter: alpha(opacity=30);
 }
-[class^="comment-edit-bb"] {
+.comment-edit-bb {
   list-style: none;
   display: none;
-  margin: 0px 0 0px 60px;
+  margin: 0px;
+  padding: 0px;
   width: 75%;
 }
-[class^="comment-edit-bb"] > li {
+.comment-edit-bb > li {
   display: inline-block;
   margin: 10px 10px 0 0;
   visibility: none;
 }
-[class^="comment-edit-bb-end"] {
-  clear: both;
-}
 .editicon {
   display: inline-block;
   width: 16px;
   height: 16px;
-  background-image: url(bbedit.png);
+  background-image: url(icons/bbedit.png);
   text-decoration: none;
 }
 .editicon :hover {
@@ -2047,28 +2128,3 @@ footer {
 .videobb:hover {
   background-position: -112px -16px;
 }
-.attachtype {
-  display: block;
-  width: 20px;
-  height: 23px;
-  float: left;
-  background-image: url('../../../images/content-types.png');
-}
-.body-attach {
-  margin-top: 10px;
-}
-.type-video {
-  background-position: 0px 0px;
-}
-.type-image {
-  background-position: -20px 0px;
-}
-.type-audio {
-  background-position: -40px 0px;
-}
-.type-text {
-  background-position: -60px 0px;
-}
-.type-unkn {
-  background-position: -80px 0px;
-}
diff --git a/view/theme/quattro/icons/bbedit.png b/view/theme/quattro/icons/bbedit.png
new file mode 100644 (file)
index 0000000..b89f2f7
Binary files /dev/null and b/view/theme/quattro/icons/bbedit.png differ
index 989f1787814a949fd4dce21dcc9973ea1e52ae32..0d673236b7280862d3bc56a839df7551c5398325 100644 (file)
                </div>
                <div class="wall-item-actions">
                        <div class="wall-item-actions-author">
-                               <a href="$mail.from_url" target="redir" class="wall-item-name-link"><span class="wall-item-name$mail.sparkle">$mail.from_name</span></a> <span class="wall-item-ago">$mail.date</span>
+                               <a href="$mail.from_url" target="redir"
+                                class="wall-item-name-link"><span
+                                class="wall-item-name$mail.sparkle">$mail.from_name</span></a>
+                                <span class="wall-item-ago" title="$mail.date">$mail.ago</span>
                        </div>
                        
                        <div class="wall-item-actions-social">
index 6bc6c84f60241aa40bef69c498a5beddfd5fb0c4..4f0fe673a0fd7d0a21c935da9e54e76456be0c55 100644 (file)
@@ -1,7 +1,7 @@
 <div class="mail-list-wrapper">
        <span class="mail-subject {{if $seen}}seen{{else}}unseen{{endif}}"><a href="message/$id" class="mail-link">$subject</a></span>
        <span class="mail-from">$from_name</span>
-       <span class="mail-date">$date</span>
+       <span class="mail-date" title="$date">$ago</span>
        <span class="mail-count">$count</span>
        
        <a href="message/dropconv/$id" onclick="return confirmDelete();"  title="$delete" class="mail-delete icon s22 delete"></a>
index 7cd02f16486eb38ea54f5bbe54408fc1982936ef..cbb7dcc7458bfe981d0f452b870baabab381d7d4 100644 (file)
@@ -45,7 +45,9 @@
 
        {{ if $marital }}<dl class="marital"><dt class="marital-label"><span class="heart">&hearts;</span>$marital</dt><dd class="marital-text">$profile.marital</dd></dl>{{ endif }}
 
-       {{ if $homepage }}<dl class="homepage"><dt class="homepage-label">$homepage</dt><dd class="homepage-url"><a href="$profile.homepage" target="external-link">$profile.homepage</a></dd></dl>{{ endif }}
+       {{ if $homepage }}<dl class="homepage"><dt
+        class="homepage-label">$homepage</dt><dd class="homepage-url"><a
+        href="$profile.homepage" target="external-link">$profile.homepage</a></dd></dl>{{ endif }}
 
        {{ inc diaspora_vcard.tpl }}{{ endinc }}
        
diff --git a/view/theme/quattro/prv_message.tpl b/view/theme/quattro/prv_message.tpl
new file mode 100644 (file)
index 0000000..5aa0368
--- /dev/null
@@ -0,0 +1,33 @@
+
+<h3>$header</h3>
+
+<div id="prvmail-wrapper" >
+<form id="prvmail-form" action="message" method="post" >
+
+$parent
+
+<div id="prvmail-to-label">$to</div>
+$select
+
+<div id="prvmail-subject-label">$subject</div>
+<input type="text" size="64" maxlength="255" id="prvmail-subject" name="subject" value="$subjtxt" $readonly tabindex="11" />
+
+<div id="prvmail-message-label">$yourmessage</div>
+<textarea rows="20" cols="72" class="prvmail-text" id="prvmail-text" name="body" tabindex="12">$text</textarea>
+
+
+<div id="prvmail-submit-wrapper" >
+       <input type="submit" id="prvmail-submit" name="submit" value="$submit" tabindex="13" />
+       <div id="prvmail-upload-wrapper" >
+               <div id="prvmail-upload" class="icon border camera" title="$upload" ></div>
+       </div> 
+       <div id="prvmail-link-wrapper" >
+               <div id="prvmail-link" class="icon border link" title="$insert" onclick="jotGetLink();" ></div>
+       </div> 
+       <div id="prvmail-rotator-wrapper" >
+               <img id="prvmail-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
+       </div> 
+</div>
+<div id="prvmail-end"></div>
+</form>
+</div>
index b5f0af669685ebe661fc19bb02def9f7c0a0e368..84aa13ac039434cb644b92cfc71870d6aa0d662c 100644 (file)
@@ -51,6 +51,14 @@ a:hover {color: @LinkHover; text-decoration: underline; }
 .fakelink { color: @Link; text-decoration: none; cursor:pointer; }
 .fakelink:hover { color: @LinkHover; text-decoration: underline; }
 
+blockquote {
+    background:@BlockquoteBackgroundColor;
+    padding: 1em;
+    margin-left: 1em;
+    border-left: 1em solid @BlockquoteBorderColor;
+    
+}
+
 code {
        font-family: Courier, monospace;
        white-space: pre;
@@ -63,6 +71,9 @@ code {
        margin-top: 20px; 
 }
 
+textarea { font-size: 20px; }
+
+
 #panel {
        position: absolute;
        width: 10em;
@@ -531,17 +542,21 @@ section {
                padding:0.3em;
        }
        .comment-edit-text-full {
-               font-size: 14px;
+               font-size: 20px;
                height: 4em;
                color: @CommentBoxFullColor;
                border: 1px solid @CommentBoxFullBorderColor;
        }
+       
 }
 
+.threaded .wall-item-comment-wrapper { margin-left: 0px; }
+
 .comment-edit-preview {
        width: 710px;
        border: 1px solid @Grey5;
        margin-top: 10px;
+       background-color: @JotPreviewBackgroundColor;
        
        .contact-photo { width: 32px; height: 32px; margin-left: 16px;
                /*background: url(../../../images/icons/22/user.png) no-repeat center center;*/
@@ -552,8 +567,13 @@ section {
        }
        .wall-item-links { padding-left: 12px; }
 
-       .wall-item-container { width: 700px; }
-       .tread-wrapper { width: 700px; padding: 0; margin: 10px 0;}
+       .wall-item-container { width: 90%; }
+       .tread-wrapper { 
+               width: 90%; padding: 0; margin: 10px 0; 
+               background-color: @JotPreviewBackgroundColor;
+               border-bottom: 0px;
+       }
+       .wall-item-conv { display: none; }
 }
 
 .shiny { border-right:10px solid @ShinyBorderColor; }
@@ -594,6 +614,55 @@ section {
 }
 .wwto .contact-photo { width: 25px; height: 25px; }
 
+
+/* threaded comments */
+.children {
+       margin-top: 1em;
+       .hide-comments-outer { margin-left:60px; }
+       
+       .wwto { display: none; }
+       
+       .comment-edit-preview { width: 660px;
+               .wall-item-container { width: 610px; }
+        }
+       
+       & .children {
+               
+               margin-left: 40px;
+               .wall-item-container { width: 710px; }
+               .comment-edit-preview { width: 620px;
+                       .wall-item-container { width: 620px; }
+                }
+       
+               & .children {
+                       .wall-item-container { width: 670px; }
+                       .comment-edit-preview { width: 580px; 
+                               .wall-item-container { width: 580px; }
+                       }
+               
+                       & .children {
+                               .wall-item-container { width: 630px; }
+                               .comment-edit-preview { width: 540px; 
+                                       .wall-item-container { width: 540px; }
+                               }
+
+                               & .children {
+                                       .wall-item-container { width: 590px; }
+                                       .comment-edit-preview { width: 500px; 
+                                               .wall-item-container { width: 500px; }
+                                       }
+                                       
+                                       .children {
+                                               margin-left: 0px;
+                                               .hide-comments-outer { margin-left: 0px; }
+                                       }
+                               }
+                       }               
+               }
+       }
+}
+/*.threaded .hide-comments-outer { margin-left: 20px; }*/
+
 span[id^="showmore-teaser"]{
     background: url("showmore-bg.jpg") no-repeat center bottom;
 }
@@ -675,6 +744,8 @@ span[id^="showmore-wrap"] {
                color: @CommentBoxEmptyColor;
                border: 1px solid @CommentBoxEmptyBorderColor;
                padding:0.3em;
+               
+               &:focus { font-size: 20px; }
        }
 
        #jot-tools {
@@ -1341,25 +1412,24 @@ footer { height: 100px; display: table-row; }
 /* edit buttons for comments */
 
 .icon.dim { opacity: 0.3;filter:alpha(opacity=30); }
-[class^="comment-edit-bb"] {
+.comment-edit-bb {
        list-style: none;
        display: none;
-       margin: 0px 0 0px 60px;
+       margin: 0px;
+       padding: 0px;
        width: 75%;
 }
-[class^="comment-edit-bb"] > li {
+.comment-edit-bb > li {
        display: inline-block;
        margin: 10px 10px 0 0;
        visibility: none;
 }
-[class^="comment-edit-bb-end"] {
-       clear: both;
-}
+
 .editicon {
     display: inline-block;
     width: 16px;
     height: 16px;
-    background-image: url(bbedit.png);
+    background-image: url(icons/bbedit.png);
     text-decoration: none;
     :hover {background-color: #ccc;}
 }
@@ -1380,18 +1450,4 @@ footer { height: 100px; display: table-row; }
 .videobb { background-position: -112px 0px; }
 .videobb:hover { background-position: -112px -16px; }
 
-.attachtype {
-       display: block; width: 20px; height: 23px;
-       float: left;
-       background-image: url('../../../images/content-types.png');
-}
-
-.body-attach {
-       margin-top: 10px;
-}
 
-.type-video { background-position: 0px 0px; }
-.type-image { background-position: -20px 0px; }
-.type-audio { background-position: -40px 0px; }
-.type-text  { background-position: -60px 0px; }
-.type-unkn  { background-position: -80px 0px; }
index 80d6678fb3589747e3d9037d1d788373f10be4d2..e207484dc824321f7517986f8e9f43e491a890c6 100644 (file)
@@ -42,7 +42,7 @@
                </div>
                <div class="wall-item-actions">
                        <div class="wall-item-actions-author">
-                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle">$item.name</span></a> <span class="wall-item-ago">$item.ago</span>
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle">$item.name</span></a> <span class="wall-item-ago" title="$item.localtime">$item.ago</span>
                        </div>
                        
                        <div class="wall-item-actions-social">
index 5cb373eefe85f8609f305fc716c4b0d88a7a9198..1c986e4c8f2f3eb16abaea88a2a6dd504c56de26 100644 (file)
@@ -42,11 +42,21 @@ function insertFormatting(comment,BBcode,id) {
        return true;
 }
 
+function showThread(id) {
+       $("#collapsed-comments-" + id).show()
+       $("#collapsed-comments-" + id + " .collapsed-comments").show()
+}
+function hideThread(id) {
+       $("#collapsed-comments-" + id).hide()
+       $("#collapsed-comments-" + id + " .collapsed-comments").hide()
+}
+
+
 function cmtBbOpen(id) {
-       $(".comment-edit-bb-" + id).show();
+       $("#comment-edit-bb-" + id).show();
 }
-function cmtBbClose(comment, id) {
-       $(".comment-edit-bb-" + id).hide();
+function cmtBbClose(id) {
+       $("#comment-edit-bb-" + id).hide();
 }
 $(document).ready(function() {
 
diff --git a/view/theme/quattro/threaded_conversation.tpl b/view/theme/quattro/threaded_conversation.tpl
new file mode 100644 (file)
index 0000000..94be864
--- /dev/null
@@ -0,0 +1,37 @@
+{{ for $threads as $item }}
+
+<div id="tread-wrapper-$item.id" class="tread-wrapper {{ if $item.threaded }}threaded{{ endif }}  $item.toplevel">
+       
+       
+               {{ if $item.type == tag }}
+                       {{ inc wall_item_tag.tpl }}{{ endinc }}
+               {{ else }}
+                       {{ inc $item.template }}{{ endinc }}
+               {{ endif }}
+               
+</div>
+{{ endfor }}
+
+<div id="conversation-end"></div>
+
+{{ if $dropping }}
+<a href="#" onclick="deleteCheckedItems();return false;">
+       <span class="icon s22 delete text">$dropping</span>
+</a>
+{{ endif }}
+
+<script>
+// jquery color plugin from https://raw.github.com/gist/1891361/17747b50ad87f7a59a14b4e0f38d8f3fb6a18b27/gistfile1.js
+    (function(d){d.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","color","outlineColor"],function(f,e){d.fx.step[e]=function(g){if(!g.colorInit){g.start=c(g.elem,e);g.end=b(g.end);g.colorInit=true}g.elem.style[e]="rgb("+[Math.max(Math.min(parseInt((g.pos*(g.end[0]-g.start[0]))+g.start[0]),255),0),Math.max(Math.min(parseInt((g.pos*(g.end[1]-g.start[1]))+g.start[1]),255),0),Math.max(Math.min(parseInt((g.pos*(g.end[2]-g.start[2]))+g.start[2]),255),0)].join(",")+")"}});function b(f){var e;if(f&&f.constructor==Array&&f.length==3){return f}if(e=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(f)){return[parseInt(e[1]),parseInt(e[2]),parseInt(e[3])]}if(e=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(f)){return[parseFloat(e[1])*2.55,parseFloat(e[2])*2.55,parseFloat(e[3])*2.55]}if(e=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(f)){return[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16)]}if(e=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(f)){return[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16)]}if(e=/rgba\(0, 0, 0, 0\)/.exec(f)){return a.transparent}return a[d.trim(f).toLowerCase()]}function c(g,e){var f;do{f=d.curCSS(g,e);if(f!=""&&f!="transparent"||d.nodeName(g,"body")){break}e="backgroundColor"}while(g=g.parentNode);return b(f)}var a={transparent:[255,255,255]}})(jQuery);
+    var colWhite = {backgroundColor:'#EFF0F1'};
+    var colShiny = {backgroundColor:'#FCE94F'};
+</script>
+
+{{ if $mode == display }}
+<script>
+    var id = window.location.pathname.split("/").pop();
+    $(window).scrollTop($('#item-'+id).position().top);
+    $('#item-'+id).animate(colWhite, 1000).animate(colShiny).animate(colWhite, 2000);   
+</script>
+{{ endif }}
+
index 411879def34a52e5d2f8b66fe3aecaddcb939427..731c2d2bfc86cadb119f4e2ec5013fef8f667a8c 100644 (file)
                </div>
                <div class="wall-item-actions">
                        <div class="wall-item-actions-author">
-                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle">$item.name</span></a> <span class="wall-item-ago">$item.ago</span>
+                               <a href="$item.profile_url" target="redir"
+                                title="$item.linktitle"
+                                class="wall-item-name-link"><span
+                                class="wall-item-name$item.sparkle">$item.name</span></a>
+                                <span class="wall-item-ago" title="$item.localtime">$item.ago</span>
                        </div>
                        
                        <div class="wall-item-actions-social">
index 926fc929d26df61cf641ad3de20719f6e85cb2e5..e1ef9321351348b5c8a79dd812bcd7fba3e8792b 100644 (file)
@@ -1,3 +1,5 @@
+{{ if $item.thread_level!=1 }}<div class="children">{{ endif }}
+
 <div class="wall-item-container item-tag $item.indent">
        <div class="wall-item-item">
                <div class="wall-item-info">
                        <div class="wall-item-location">$item.location</div>    
                </div>
                <div class="wall-item-content">
-                       $item.body
+                       $item.ago $item.body 
                </div>
        </div>
 </div>
 
-<div class="wall-item-comment-wrapper" >
-       $item.comment
-</div>
+{{ if $item.thread_level!=1 }}</div>{{ endif }}
+
+{{ if $item.flatten }}
+<div class="wall-item-comment-wrapper" >$item.comment</div>
+{{ endif }}
diff --git a/view/theme/quattro/wall_thread.tpl b/view/theme/quattro/wall_thread.tpl
new file mode 100644 (file)
index 0000000..757f175
--- /dev/null
@@ -0,0 +1,144 @@
+{{if $mode == display}}
+{{ else }}
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+               <span id="hide-comments-total-$item.id" 
+                       class="hide-comments-total">$item.num_comments</span>
+                       <span id="hide-comments-$item.id" 
+                               class="hide-comments fakelink" 
+                               onclick="showHideComments($item.id);">$item.hide_text</span>
+                       {{ if $item.thread_level==3 }} - 
+                       <span id="hide-thread-$item-id"
+                               class="fakelink"
+                               onclick="showThread($item.id);">expand</span> /
+                       <span id="hide-thread-$item-id"
+                               class="fakelink"
+                               onclick="hideThread($item.id);">collapse</span> thread{{ endif }}
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+{{ endif }}
+
+{{ if $item.thread_level!=1 }}<div class="children">{{ endif }}
+
+<div class="wall-item-decor">
+       <span class="icon s22 star $item.isstarred" id="starred-$item.id" title="$item.star.starred">$item.star.starred</span>
+       {{ if $item.lock }}<span class="icon s22 lock fakelink" onclick="lockview(event,$item.id);" title="$item.lock">$item.lock</span>{{ endif }}     
+       <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+</div>
+
+<div class="wall-item-container $item.indent" id="item-$item.id">
+       <div class="wall-item-item">
+               <div class="wall-item-info">
+                       <div class="contact-photo-wrapper"
+                               onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
+                               onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="contact-photo-link" id="wall-item-photo-link-$item.id">
+                                       <img src="$item.thumb" class="contact-photo$item.sparkle" id="wall-item-photo-$item.id" alt="$item.name" />
+                               </a>
+                               <a href="#" rel="#wall-item-photo-menu-$item.id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$item.id">menu</a>
+                               <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$item.id">
+                               $item.item_photo_menu
+                               </ul>
+                               
+                       </div>
+                       <div class="wall-item-location">$item.location</div>    
+               </div>
+               <div class="wall-item-content">
+                       {{ if $item.title }}<h2><a href="$item.plink.href" class="$item.sparkle">$item.title</a></h2>{{ endif }}
+                       $item.body
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="wall-item-links">
+               </div>
+               <div class="wall-item-tags">
+                       {{ for $item.tags as $tag }}
+                               <span class='tag'>$tag</span>
+                       {{ endfor }}
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="">
+                       {{ if $item.plink }}<a class="icon s16 link$item.sparkle" title="$item.plink.title" href="$item.plink.href">$item.plink.title</a>{{ endif }}
+               </div>
+               <div class="wall-item-actions">
+                       <div class="wall-item-actions-author">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle">$item.name</span></a> <span class="wall-item-ago" title="$item.localtime">$item.ago</span>
+                       </div>
+                       
+                       <div class="wall-item-actions-social">
+                       {{ if $item.star }}
+                               <a href="#" id="star-$item.id" onclick="dostar($item.id); return false;"  class="$item.star.classdo"  title="$item.star.do">$item.star.do</a>
+                               <a href="#" id="unstar-$item.id" onclick="dostar($item.id); return false;"  class="$item.star.classundo"  title="$item.star.undo">$item.star.undo</a>
+                               <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="$item.star.classtagger" title="$item.star.tagger">$item.star.tagger</a>
+                       {{ endif }}
+                       {{ if $item.filer }}
+                                <a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item filer-icon" title="$item.filer">$item.filer</a>
+                       {{ endif }}                     
+                       
+                       {{ if $item.vote }}
+                               <a href="#" id="like-$item.id" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false">$item.vote.like.1</a>
+                               <a href="#" id="dislike-$item.id" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false">$item.vote.dislike.1</a>
+                       {{ endif }}
+                                               
+                       {{ if $item.vote.share }}
+                               <a href="#" id="share-$item.id" title="$item.vote.share.0" onclick="jotShare($item.id); return false">$item.vote.share.1</a>
+                       {{ endif }}                     
+                       </div>
+                       
+                       <div class="wall-item-actions-tools">
+
+                               {{ if $item.drop.dropping }}
+                                       <input type="checkbox" title="$item.drop.select" name="itemselected[]" class="item-select" value="$item.id" />
+                                       <a href="item/drop/$item.id" onclick="return confirmDelete();" class="icon delete s16" title="$item.drop.delete">$item.drop.delete</a>
+                               {{ endif }}
+                               {{ if $item.edpost }}
+                                       <a class="icon edit s16" href="$item.edpost.0" title="$item.edpost.1"></a>
+                               {{ endif }}
+                       </div>
+                       
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="wall-item-links"></div>
+               <div class="wall-item-like" id="wall-item-like-$item.id">$item.like</div>
+               <div class="wall-item-dislike" id="wall-item-dislike-$item.id">$item.dislike</div>      
+       </div>
+       {{ if $item.threaded }}{{ if $item.comment }}{{ if $item.thread_level!=1 }}
+       <div class="wall-item-bottom">
+               <div class="wall-item-links"></div>
+               <div class="wall-item-comment-wrapper">
+                       $item.comment
+               </div>
+       </div>
+       {{ endif }}{{ endif }}{{ endif }}
+
+</div>
+
+
+
+{{ for $item.children as $child }}
+       {{ if $item.type == tag }}
+               {{ inc wall_item_tag.tpl with $item=$child }}{{ endinc }}
+       {{ else }}
+               {{ inc $item.template with $item=$child }}{{ endinc }}
+       {{ endif }}
+{{ endfor }}
+
+{{ if $item.thread_level!=1 }}</div>{{ endif }}
+
+
+{{if $mode == display}}
+{{ else }}
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
+{{ endif }}
+
+{{if $item.threaded}}{{if $item.comment}}{{if $item.thread_level==1}}
+<div class="wall-item-comment-wrapper" >$item.comment</div>
+{{ endif }}{{ endif }}{{ endif }}
+
+
+{{ if $item.flatten }}
+<div class="wall-item-comment-wrapper" >$item.comment</div>
+{{ endif }}
index 2e3cf821fbf54f0bfd1fe776270703112170d99a..e26b1863604b259ecdfad5a4640ab81aaf904643 100644 (file)
@@ -46,7 +46,7 @@
                </div>
                <div class="wall-item-actions">
                        <div class="wall-item-actions-author">
-                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle">$item.name</span></a> <span class="wall-item-ago">$item.ago</span>
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle">$item.name</span></a> <span class="wall-item-ago" title="$item.localtime">$item.ago</span>
                                 <br/>$item.to <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-name-link"><span class="wall-item-name$item.osparkle" id="wall-item-ownername-$item.id">$item.owner_name</span></a> $item.vwall
                                 
                        </div>
diff --git a/view/theme/quattro/wallwall_thread.tpl b/view/theme/quattro/wallwall_thread.tpl
new file mode 100644 (file)
index 0000000..4589390
--- /dev/null
@@ -0,0 +1,155 @@
+{{if $mode == display}}
+{{ else }}
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+               <span id="hide-comments-total-$item.id" 
+                       class="hide-comments-total">$item.num_comments</span>
+                       <span id="hide-comments-$item.id" 
+                               class="hide-comments fakelink" 
+                               onclick="showHideComments($item.id);">$item.hide_text</span>
+                       {{ if $item.thread_level==3 }} - 
+                       <span id="hide-thread-$item-id"
+                               class="fakelink"
+                               onclick="showThread($item.id);">expand</span> /
+                       <span id="hide-thread-$item-id"
+                               class="fakelink"
+                               onclick="hideThread($item.id);">collapse</span> thread{{ endif }}
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+{{ endif }}
+
+{{ if $item.thread_level!=1 }}<div class="children">{{ endif }}
+
+<div class="wall-item-decor">
+       <span class="icon s22 star $item.isstarred" id="starred-$item.id" title="$item.star.starred">$item.star.starred</span>
+       {{ if $item.lock }}<span class="icon s22 lock fakelink" onclick="lockview(event,$item.id);" title="$item.lock">$item.lock</span>{{ endif }}     
+       <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+</div>
+
+<div class="wall-item-container $item.indent" id="item-$item.id">
+       <div class="wall-item-item">
+               <div class="wall-item-info">
+                       <div class="contact-photo-wrapper mframe wwfrom"
+                               onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
+                               onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="contact-photo-link" id="wall-item-photo-link-$item.id">
+                                       <img src="$item.thumb" class="contact-photo $item.sparkle" id="wall-item-photo-$item.id" alt="$item.name" />
+                               </a>
+                               <a href="#" rel="#wall-item-photo-menu-$item.id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$item.id">menu</a>
+                               <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$item.id">
+                               $item.item_photo_menu
+                               </ul>
+                               
+                       </div>  
+                       <div class="contact-photo-wrapper mframe wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
+                               <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="contact-photo-link" id="wall-item-ownerphoto-link-$item.id">
+                                       <img src="$item.owner_photo" class="contact-photo $item.osparkle" id="wall-item-ownerphoto-$item.id" alt="$item.owner_name" />
+                               </a>
+                       </div>                  
+                       <div class="wall-item-location">$item.location</div>    
+               </div>
+               <div class="wall-item-content">
+                       {{ if $item.title }}<h2><a href="$item.plink.href" class="$item.sparkle">$item.title</a></h2>{{ endif }}
+                       $item.body
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="wall-item-links">
+               </div>
+               <div class="wall-item-tags">
+                       {{ for $item.tags as $tag }}
+                               <span class='tag'>$tag</span>
+                       {{ endfor }}
+               </div>
+       </div>  
+       <div class="wall-item-bottom">
+               <div class="wall-item-links">
+                       {{ if $item.plink }}<a class="icon s16 link$item.sparkle" title="$item.plink.title" href="$item.plink.href">$item.plink.title</a>{{ endif }}
+               </div>
+               <div class="wall-item-actions">
+                       <div class="wall-item-actions-author">
+                               <a href="$item.profile_url" target="redir"
+                                title="$item.linktitle"
+                                class="wall-item-name-link"><span
+                                class="wall-item-name$item.sparkle">$item.name</span></a>
+                                <span class="wall-item-ago" title="$item.localtime">$item.ago</span>
+                                <br/>$item.to <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-name-link"><span class="wall-item-name$item.osparkle" id="wall-item-ownername-$item.id">$item.owner_name</span></a> $item.vwall
+                                
+                       </div>
+                       
+                       <div class="wall-item-actions-social">
+                       {{ if $item.star }}
+                               <a href="#" id="star-$item.id" onclick="dostar($item.id); return false;"  class="$item.star.classdo"  title="$item.star.do">$item.star.do</a>
+                               <a href="#" id="unstar-$item.id" onclick="dostar($item.id); return false;"  class="$item.star.classundo"  title="$item.star.undo">$item.star.undo</a>
+                               <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="$item.star.classtagger" title="$item.star.tagger">$item.star.tagger</a>
+
+                       {{ endif }}
+                       {{ if $item.filer }}
+                                <a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item filer-icon" title="$item.filer">$item.filer</a>
+                       {{ endif }}                     
+                       
+                       {{ if $item.vote }}
+                               <a href="#" id="like-$item.id" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false">$item.vote.like.1</a>
+                               <a href="#" id="dislike-$item.id" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false">$item.vote.dislike.1</a>
+                       {{ endif }}
+                                               
+                       {{ if $item.vote.share }}
+                               <a href="#" id="share-$item.id" title="$item.vote.share.0" onclick="jotShare($item.id); return false">$item.vote.share.1</a>
+                       {{ endif }}                     
+                       </div>
+                       
+                       <div class="wall-item-actions-tools">
+
+                               {{ if $item.drop.dropping }}
+                                       <input type="checkbox" title="$item.drop.select" name="itemselected[]" class="item-select" value="$item.id" />
+                                       <a href="item/drop/$item.id" onclick="return confirmDelete();" class="icon delete s16" title="$item.drop.delete">$item.drop.delete</a>
+                               {{ endif }}
+                               {{ if $item.edpost }}
+                                       <a class="icon edit s16" href="$item.edpost.0" title="$item.edpost.1"></a>
+                               {{ endif }}
+                       </div>
+                       
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="wall-item-links"></div>
+               <div class="wall-item-like" id="wall-item-like-$item.id">$item.like</div>
+               <div class="wall-item-dislike" id="wall-item-dislike-$item.id">$item.dislike</div>      
+       </div>
+       
+       {{ if $item.threaded }}{{ if $item.comment }}{{ if $item.indent==comment }}
+       <div class="wall-item-bottom">
+               <div class="wall-item-links"></div>
+               <div class="wall-item-comment-wrapper">
+                                       $item.comment
+               </div>
+       </div>
+       {{ endif }}{{ endif }}{{ endif }}
+</div>
+
+
+{{ for $item.children as $child }}
+       {{ if $item.type == tag }}
+               {{ inc wall_item_tag.tpl with $item=$child }}{{ endinc }}
+       {{ else }}
+               {{ inc $item.template with $item=$child }}{{ endinc }}
+       {{ endif }}
+{{ endfor }}
+
+{{ if $item.thread_level!=1 }}</div>{{ endif }}
+
+
+{{if $mode == display}}
+{{ else }}
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
+{{ endif }}
+
+{{if $item.threaded}}{{if $item.comment}}{{if $item.thread_level==1}}
+<div class="wall-item-comment-wrapper" >$item.comment</div>
+{{ endif }}{{ endif }}{{ endif }}
+
+
+{{ if $item.flatten }}
+<div class="wall-item-comment-wrapper" >$item.comment</div>
+{{ endif }}
index a0a4ef393b32ef5ba911bb7f3f99ef7ece9276f1..4b70ab98d16ec178935b51f3b11a6f4071bf46aa 100644 (file)
@@ -1,5 +1,5 @@
-<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper mframe" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
@@ -50,4 +50,4 @@
        <div class="wall-item-wrapper-end"></div>
 </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
index 44491d967c0b500af0fcdd02e4fe1fab9e8b2b35..63ed406c8616a2f80415a6ac1c5c2da9eb35ed80 100644 (file)
@@ -1,5 +1,5 @@
-<div class="wall-item-outside-wrapper$item.indent" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper mframe" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
@@ -74,5 +74,5 @@
        </div>
 </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 
index eb7c3ddbaf01605f03f181842ca5908eb8d084ea..e4849cf0b14d5b854e2a6e9a92162433a49b1639 100644 (file)
@@ -1,5 +1,5 @@
-<div class="wall-item-outside-wrapper$item.indent wallwall" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent wallwall" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info wallwall" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper mframe wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
                                <a href="$item.owner_url" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
@@ -77,5 +77,5 @@
        </div>
 </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 
diff --git a/view/theme/vier/threaded_conversation.tpl b/view/theme/vier/threaded_conversation.tpl
new file mode 100644 (file)
index 0000000..13c38ac
--- /dev/null
@@ -0,0 +1,37 @@
+{{ for $threads as $item }}
+
+<div id="tread-wrapper-$item.id" class="tread-wrapper {{ if $item.threaded }}threaded{{ endif }}">
+       
+       
+               {{ if $item.type == tag }}
+                       {{ inc wall_item_tag.tpl }}{{ endinc }}
+               {{ else }}
+                       {{ inc $item.template }}{{ endinc }}
+               {{ endif }}
+               
+</div>
+{{ endfor }}
+
+<div id="conversation-end"></div>
+
+{{ if $dropping }}
+<a href="#" onclick="deleteCheckedItems();return false;">
+       <span class="icon s22 delete text">$dropping</span>
+</a>
+{{ endif }}
+
+<script>
+// jquery color plugin from https://raw.github.com/gist/1891361/17747b50ad87f7a59a14b4e0f38d8f3fb6a18b27/gistfile1.js
+    (function(d){d.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","color","outlineColor"],function(f,e){d.fx.step[e]=function(g){if(!g.colorInit){g.start=c(g.elem,e);g.end=b(g.end);g.colorInit=true}g.elem.style[e]="rgb("+[Math.max(Math.min(parseInt((g.pos*(g.end[0]-g.start[0]))+g.start[0]),255),0),Math.max(Math.min(parseInt((g.pos*(g.end[1]-g.start[1]))+g.start[1]),255),0),Math.max(Math.min(parseInt((g.pos*(g.end[2]-g.start[2]))+g.start[2]),255),0)].join(",")+")"}});function b(f){var e;if(f&&f.constructor==Array&&f.length==3){return f}if(e=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(f)){return[parseInt(e[1]),parseInt(e[2]),parseInt(e[3])]}if(e=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(f)){return[parseFloat(e[1])*2.55,parseFloat(e[2])*2.55,parseFloat(e[3])*2.55]}if(e=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(f)){return[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16)]}if(e=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(f)){return[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16)]}if(e=/rgba\(0, 0, 0, 0\)/.exec(f)){return a.transparent}return a[d.trim(f).toLowerCase()]}function c(g,e){var f;do{f=d.curCSS(g,e);if(f!=""&&f!="transparent"||d.nodeName(g,"body")){break}e="backgroundColor"}while(g=g.parentNode);return b(f)}var a={transparent:[255,255,255]}})(jQuery);
+    var colWhite = {backgroundColor:'#EFF0F1'};
+    var colShiny = {backgroundColor:'#FCE94F'};
+</script>
+
+{{ if $mode == display }}
+<script>
+    var id = window.location.pathname.split("/").pop();
+    $(window).scrollTop($('#item-'+id).position().top);
+    $('#item-'+id).animate(colWhite, 1000).animate(colShiny).animate(colWhite, 2000);   
+</script>
+{{ endif }}
+
diff --git a/view/theme/vier/wall_thread.tpl b/view/theme/vier/wall_thread.tpl
new file mode 100644 (file)
index 0000000..01738b6
--- /dev/null
@@ -0,0 +1,144 @@
+{{if $mode == display}}
+{{ else }}
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+               <span id="hide-comments-total-$item.id" 
+                       class="hide-comments-total">$item.num_comments</span>
+                       <span id="hide-comments-$item.id" 
+                               class="hide-comments fakelink" 
+                               onclick="showHideComments($item.id);">$item.hide_text</span>
+                       {{ if $item.thread_level==3 }} - 
+                       <span id="hide-thread-$item-id"
+                               class="fakelink"
+                               onclick="showThread($item.id);">expand</span> /
+                       <span id="hide-thread-$item-id"
+                               class="fakelink"
+                               onclick="hideThread($item.id);">collapse</span> thread{{ endif }}
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+{{ endif }}
+
+{{ if $item.thread_level!=1 }}<div class="children">{{ endif }}
+
+<div class="wall-item-decor">
+       <span class="icon s22 star $item.isstarred" id="starred-$item.id" title="$item.star.starred">$item.star.starred</span>
+       {{ if $item.lock }}<span class="icon s22 lock fakelink" onclick="lockview(event,$item.id);" title="$item.lock">$item.lock</span>{{ endif }}     
+       <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+</div>
+
+<div class="wall-item-container $item.indent" id="item-$item.id">
+       <div class="wall-item-item">
+               <div class="wall-item-info">
+                       <div class="contact-photo-wrapper"
+                               onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
+                               onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="contact-photo-link" id="wall-item-photo-link-$item.id">
+                                       <img src="$item.thumb" class="contact-photo$item.sparkle" id="wall-item-photo-$item.id" alt="$item.name" />
+                               </a>
+                               <a href="#" rel="#wall-item-photo-menu-$item.id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$item.id">menu</a>
+                               <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$item.id">
+                               $item.item_photo_menu
+                               </ul>
+                               
+                       </div>
+                       <div class="wall-item-location">$item.location</div>    
+               </div>
+               <div class="wall-item-content">
+                       {{ if $item.title }}<h2><a href="$item.plink.href" class="$item.sparkle">$item.title</a></h2>{{ endif }}
+                       $item.body
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="wall-item-links">
+               </div>
+               <div class="wall-item-tags">
+                       {{ for $item.tags as $tag }}
+                               <span class='tag'>$tag</span>
+                       {{ endfor }}
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="">
+                       {{ if $item.plink }}<a class="icon s16 link$item.sparkle" title="$item.plink.title" href="$item.plink.href">$item.plink.title</a>{{ endif }}
+               </div>
+               <div class="wall-item-actions">
+                       <div class="wall-item-actions-author">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle">$item.name</span></a> <span class="wall-item-ago">$item.ago</span>
+                       </div>
+                       
+                       <div class="wall-item-actions-social">
+                       {{ if $item.star }}
+                               <a href="#" id="star-$item.id" onclick="dostar($item.id); return false;"  class="$item.star.classdo"  title="$item.star.do">$item.star.do</a>
+                               <a href="#" id="unstar-$item.id" onclick="dostar($item.id); return false;"  class="$item.star.classundo"  title="$item.star.undo">$item.star.undo</a>
+                               <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="$item.star.classtagger" title="$item.star.tagger">$item.star.tagger</a>
+                       {{ endif }}
+                       {{ if $item.filer }}
+                                <a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item filer-icon" title="$item.filer">$item.filer</a>
+                       {{ endif }}                     
+                       
+                       {{ if $item.vote }}
+                               <a href="#" id="like-$item.id" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false">$item.vote.like.1</a>
+                               <a href="#" id="dislike-$item.id" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false">$item.vote.dislike.1</a>
+                       {{ endif }}
+                                               
+                       {{ if $item.vote.share }}
+                               <a href="#" id="share-$item.id" title="$item.vote.share.0" onclick="jotShare($item.id); return false">$item.vote.share.1</a>
+                       {{ endif }}                     
+                       </div>
+                       
+                       <div class="wall-item-actions-tools">
+
+                               {{ if $item.drop.dropping }}
+                                       <input type="checkbox" title="$item.drop.select" name="itemselected[]" class="item-select" value="$item.id" />
+                                       <a href="item/drop/$item.id" onclick="return confirmDelete();" class="icon delete s16" title="$item.drop.delete">$item.drop.delete</a>
+                               {{ endif }}
+                               {{ if $item.edpost }}
+                                       <a class="icon edit s16" href="$item.edpost.0" title="$item.edpost.1"></a>
+                               {{ endif }}
+                       </div>
+                       
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="wall-item-links"></div>
+               <div class="wall-item-like" id="wall-item-like-$item.id">$item.like</div>
+               <div class="wall-item-dislike" id="wall-item-dislike-$item.id">$item.dislike</div>      
+       </div>
+       {{ if $item.threaded }}{{ if $item.comment }}{{ if $item.thread_level!=1 }}
+       <div class="wall-item-bottom">
+               <div class="wall-item-links"></div>
+               <div class="wall-item-comment-wrapper">
+                       $item.comment
+               </div>
+       </div>
+       {{ endif }}{{ endif }}{{ endif }}
+
+</div>
+
+
+
+{{ for $item.children as $child }}
+       {{ if $item.type == tag }}
+               {{ inc wall_item_tag.tpl with $item=$child }}{{ endinc }}
+       {{ else }}
+               {{ inc $item.template with $item=$child }}{{ endinc }}
+       {{ endif }}
+{{ endfor }}
+
+{{ if $item.thread_level!=1 }}</div>{{ endif }}
+
+
+{{if $mode == display}}
+{{ else }}
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
+{{ endif }}
+
+{{if $item.threaded}}{{if $item.comment}}{{if $item.thread_level==1}}
+<div class="wall-item-comment-wrapper" >$item.comment</div>
+{{ endif }}{{ endif }}{{ endif }}
+
+
+{{ if $item.flatten }}
+<div class="wall-item-comment-wrapper" >$item.comment</div>
+{{ endif }}
diff --git a/view/theme/vier/wallwall_thread.tpl b/view/theme/vier/wallwall_thread.tpl
new file mode 100644 (file)
index 0000000..93a8838
--- /dev/null
@@ -0,0 +1,151 @@
+{{if $mode == display}}
+{{ else }}
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+               <span id="hide-comments-total-$item.id" 
+                       class="hide-comments-total">$item.num_comments</span>
+                       <span id="hide-comments-$item.id" 
+                               class="hide-comments fakelink" 
+                               onclick="showHideComments($item.id);">$item.hide_text</span>
+                       {{ if $item.thread_level==3 }} - 
+                       <span id="hide-thread-$item-id"
+                               class="fakelink"
+                               onclick="showThread($item.id);">expand</span> /
+                       <span id="hide-thread-$item-id"
+                               class="fakelink"
+                               onclick="hideThread($item.id);">collapse</span> thread{{ endif }}
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+{{ endif }}
+
+{{ if $item.thread_level!=1 }}<div class="children">{{ endif }}
+
+<div class="wall-item-decor">
+       <span class="icon s22 star $item.isstarred" id="starred-$item.id" title="$item.star.starred">$item.star.starred</span>
+       {{ if $item.lock }}<span class="icon s22 lock fakelink" onclick="lockview(event,$item.id);" title="$item.lock">$item.lock</span>{{ endif }}     
+       <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+</div>
+
+<div class="wall-item-container $item.indent" id="item-$item.id">
+       <div class="wall-item-item">
+               <div class="wall-item-info">
+                       <div class="contact-photo-wrapper mframe wwfrom"
+                               onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
+                               onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="contact-photo-link" id="wall-item-photo-link-$item.id">
+                                       <img src="$item.thumb" class="contact-photo $item.sparkle" id="wall-item-photo-$item.id" alt="$item.name" />
+                               </a>
+                               <a href="#" rel="#wall-item-photo-menu-$item.id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$item.id">menu</a>
+                               <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$item.id">
+                               $item.item_photo_menu
+                               </ul>
+                               
+                       </div>  
+                       <div class="contact-photo-wrapper mframe wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
+                               <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="contact-photo-link" id="wall-item-ownerphoto-link-$item.id">
+                                       <img src="$item.owner_photo" class="contact-photo $item.osparkle" id="wall-item-ownerphoto-$item.id" alt="$item.owner_name" />
+                               </a>
+                       </div>                  
+                       <div class="wall-item-location">$item.location</div>    
+               </div>
+               <div class="wall-item-content">
+                       {{ if $item.title }}<h2><a href="$item.plink.href" class="$item.sparkle">$item.title</a></h2>{{ endif }}
+                       $item.body
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="wall-item-links">
+               </div>
+               <div class="wall-item-tags">
+                       {{ for $item.tags as $tag }}
+                               <span class='tag'>$tag</span>
+                       {{ endfor }}
+               </div>
+       </div>  
+       <div class="wall-item-bottom">
+               <div class="wall-item-links">
+                       {{ if $item.plink }}<a class="icon s16 link$item.sparkle" title="$item.plink.title" href="$item.plink.href">$item.plink.title</a>{{ endif }}
+               </div>
+               <div class="wall-item-actions">
+                       <div class="wall-item-actions-author">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle">$item.name</span></a> <span class="wall-item-ago">$item.ago</span>
+                                <br/>$item.to <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-name-link"><span class="wall-item-name$item.osparkle" id="wall-item-ownername-$item.id">$item.owner_name</span></a> $item.vwall
+                                
+                       </div>
+                       
+                       <div class="wall-item-actions-social">
+                       {{ if $item.star }}
+                               <a href="#" id="star-$item.id" onclick="dostar($item.id); return false;"  class="$item.star.classdo"  title="$item.star.do">$item.star.do</a>
+                               <a href="#" id="unstar-$item.id" onclick="dostar($item.id); return false;"  class="$item.star.classundo"  title="$item.star.undo">$item.star.undo</a>
+                               <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="$item.star.classtagger" title="$item.star.tagger">$item.star.tagger</a>
+
+                       {{ endif }}
+                       {{ if $item.filer }}
+                                <a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item filer-icon" title="$item.filer">$item.filer</a>
+                       {{ endif }}                     
+                       
+                       {{ if $item.vote }}
+                               <a href="#" id="like-$item.id" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false">$item.vote.like.1</a>
+                               <a href="#" id="dislike-$item.id" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false">$item.vote.dislike.1</a>
+                       {{ endif }}
+                                               
+                       {{ if $item.vote.share }}
+                               <a href="#" id="share-$item.id" title="$item.vote.share.0" onclick="jotShare($item.id); return false">$item.vote.share.1</a>
+                       {{ endif }}                     
+                       </div>
+                       
+                       <div class="wall-item-actions-tools">
+
+                               {{ if $item.drop.dropping }}
+                                       <input type="checkbox" title="$item.drop.select" name="itemselected[]" class="item-select" value="$item.id" />
+                                       <a href="item/drop/$item.id" onclick="return confirmDelete();" class="icon delete s16" title="$item.drop.delete">$item.drop.delete</a>
+                               {{ endif }}
+                               {{ if $item.edpost }}
+                                       <a class="icon edit s16" href="$item.edpost.0" title="$item.edpost.1"></a>
+                               {{ endif }}
+                       </div>
+                       
+               </div>
+       </div>
+       <div class="wall-item-bottom">
+               <div class="wall-item-links"></div>
+               <div class="wall-item-like" id="wall-item-like-$item.id">$item.like</div>
+               <div class="wall-item-dislike" id="wall-item-dislike-$item.id">$item.dislike</div>      
+       </div>
+       
+       {{ if $item.threaded }}{{ if $item.comment }}{{ if $item.indent==comment }}
+       <div class="wall-item-bottom">
+               <div class="wall-item-links"></div>
+               <div class="wall-item-comment-wrapper">
+                                       $item.comment
+               </div>
+       </div>
+       {{ endif }}{{ endif }}{{ endif }}
+</div>
+
+
+{{ for $item.children as $child }}
+       {{ if $item.type == tag }}
+               {{ inc wall_item_tag.tpl with $item=$child }}{{ endinc }}
+       {{ else }}
+               {{ inc $item.template with $item=$child }}{{ endinc }}
+       {{ endif }}
+{{ endfor }}
+
+{{ if $item.thread_level!=1 }}</div>{{ endif }}
+
+
+{{if $mode == display}}
+{{ else }}
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
+{{ endif }}
+
+{{if $item.threaded}}{{if $item.comment}}{{if $item.thread_level==1}}
+<div class="wall-item-comment-wrapper" >$item.comment</div>
+{{ endif }}{{ endif }}{{ endif }}
+
+
+{{ if $item.flatten }}
+<div class="wall-item-comment-wrapper" >$item.comment</div>
+{{ endif }}
diff --git a/view/threaded_conversation.tpl b/view/threaded_conversation.tpl
new file mode 100644 (file)
index 0000000..f60839e
--- /dev/null
@@ -0,0 +1,13 @@
+{{ for $threads as $item }}
+{{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+<div id="conversation-end"></div>
+
+{{ if $dropping }}
+<div id="item-delete-selected" class="fakelink" onclick="deleteCheckedItems();">
+  <div id="item-delete-selected-icon" class="icon drophide" title="$dropping" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></div>
+  <div id="item-delete-selected-desc" >$dropping</div>
+</div>
+<div id="item-delete-selected-end"></div>
+{{ endif }}
index 496dab4a3f174b994cdd56adf1f3486aa896c31e..e4eabb9e5cb099197e931c412c092eb97e7c439d 100644 (file)
@@ -1,6 +1,6 @@
 <a name="$item.id" ></a>
-<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
                                 onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
@@ -24,7 +24,7 @@
                </div>
                <div class="wall-item-author">
                                <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a>
-                               <div class="wall-item-ago" id="wall-item-ago-$item.id" >$item.ago</div>
+                               <div class="wall-item-ago" id="wall-item-ago-$item.id" title="$item.localtime">$item.ago</div>
                                
                </div>  
                <div class="wall-item-content" id="wall-item-content-$item.id" >
@@ -75,5 +75,5 @@
        $item.comment
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 </div>
diff --git a/view/wall_thread.tpl b/view/wall_thread.tpl
new file mode 100644 (file)
index 0000000..f64f2e4
--- /dev/null
@@ -0,0 +1,102 @@
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+       <span id="hide-comments-total-$item.id" class="hide-comments-total">$item.num_comments</span> <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span>
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+<div id="tread-wrapper-$item.id" class="tread-wrapper $item.toplevel">
+<a name="$item.id" ></a>
+<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
+               <div class="wall-item-info" id="wall-item-info-$item.id">
+                       <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id" 
+                                onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')" 
+                                onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
+                                       <img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" />
+                               </a>
+                               <span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
+                               <div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
+                                       <ul>
+                                               $item.item_photo_menu
+                                       </ul>
+                               </div>
+                       </div>
+                       <div class="wall-item-photo-end"></div>
+                       <div class="wall-item-wrapper" id="wall-item-wrapper-$item.id" >
+                               {{ if $item.lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /></div>
+                               {{ else }}<div class="wall-item-lock"></div>{{ endif }} 
+                               <div class="wall-item-location" id="wall-item-location-$item.id">$item.location</div>                           
+                       </div>
+               </div>
+               <div class="wall-item-author">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a>
+                               <div class="wall-item-ago" id="wall-item-ago-$item.id" title="$item.localtime">$item.ago</div>
+                               
+               </div>  
+               <div class="wall-item-content" id="wall-item-content-$item.id" >
+                       <div class="wall-item-title" id="wall-item-title-$item.id">$item.title</div>
+                       <div class="wall-item-title-end"></div>
+                       <div class="wall-item-body" id="wall-item-body-$item.id" >$item.body
+                                       <div class="body-tag">
+                                               {{ for $item.tags as $tag }}
+                                                       <span class='tag'>$tag</span>
+                                               {{ endfor }}
+                                       </div>
+                       </div>
+               </div>
+               <div class="wall-item-tools" id="wall-item-tools-$item.id">
+                       {{ if $item.vote }}
+                       <div class="wall-item-like-buttons" id="wall-item-like-buttons-$item.id">
+                               <a href="#" class="icon like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false"></a>
+                               <a href="#" class="icon dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
+                               {{ if $item.vote.share }}<a href="#" class="icon recycle wall-item-share-buttons" title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>{{ endif }}
+                               <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+                       </div>
+                       {{ endif }}
+                       {{ if $item.plink }}
+                               <div class="wall-item-links-wrapper"><a href="$item.plink.href" title="$item.plink.title" target="external-link" class="icon remote-link$item.sparkle"></a></div>
+                       {{ endif }}
+                       {{ if $item.edpost }}
+                               <a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
+                       {{ endif }}
+                        
+                       {{ if $item.star }}
+                       <a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item icon $item.isstarred" title="$item.star.toggle"></a>
+                       <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item icon tagged" title="$item.star.tagger"></a>
+                       {{ endif }}
+                       {{ if $item.filer }}
+                       <a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item filer-icon" title="$item.filer"></a>
+                       {{ endif }}     
+                       <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$item.id" >
+                               {{ if $item.drop.dropping }}<a href="item/drop/$item.id" onclick="return confirmDelete();" class="icon drophide" title="$item.drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
+                       </div>
+                               {{ if $item.drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$item.drop.select" class="item-select" name="itemselected[]" value="$item.id" />{{ endif }}
+                       <div class="wall-item-delete-end"></div>
+               </div>
+       </div>
+       <div class="wall-item-wrapper-end"></div>
+       <div class="wall-item-like $item.indent" id="wall-item-like-$item.id">$item.like</div>
+       <div class="wall-item-dislike $item.indent" id="wall-item-dislike-$item.id">$item.dislike</div>
+
+                       {{ if $item.threaded }}
+                       {{ if $item.comment }}
+                       <div class="wall-item-comment-wrapper $item.indent" >
+                               $item.comment
+                       </div>
+                       {{ endif }}
+                       {{ endif }}
+
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
+</div>
+{{ for $item.children as $item }}
+       {{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+{{ if $item.flatten }}
+<div class="wall-item-comment-wrapper" >
+       $item.comment
+</div>
+{{ endif }}
+</div>
+{{if $item.comment_lastcollapsed}}</div>{{endif}}
index b7cca3fab9c9839ee71e6a6ac0aa16fefc6d6680..e8044532a36923b422d10bf0b34a7950f1090ef8 100644 (file)
@@ -1,6 +1,6 @@
 <a name="$item.id" ></a>
-<div class="wall-item-outside-wrapper$item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
-       <div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
+<div class="wall-item-outside-wrapper $item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
                <div class="wall-item-info wallwall" id="wall-item-info-$item.id">
                        <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
                                <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
@@ -29,7 +29,7 @@
                </div>
                <div class="wall-item-author">
                                <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a> $item.to <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-name-link"><span class="wall-item-name$item.osparkle" id="wall-item-ownername-$item.id">$item.owner_name</span></a> $item.vwall<br />
-                               <div class="wall-item-ago"  id="wall-item-ago-$item.id">$item.ago</div>                         
+                               <div class="wall-item-ago" id="wall-item-ago-$item.id" title="$item.localtime">$item.ago</div>
                </div>                  
                <div class="wall-item-content" id="wall-item-content-$item.id" >
                        <div class="wall-item-title" id="wall-item-title-$item.id">$item.title</div>
@@ -81,6 +81,6 @@
        $item.comment
        </div>
 
-<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
 </div>
 
diff --git a/view/wallwall_thread.tpl b/view/wallwall_thread.tpl
new file mode 100644 (file)
index 0000000..68bb3bc
--- /dev/null
@@ -0,0 +1,107 @@
+{{if $item.comment_firstcollapsed}}
+       <div class="hide-comments-outer">
+       <span id="hide-comments-total-$item.id" class="hide-comments-total">$item.num_comments</span> <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span>
+       </div>
+       <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
+{{endif}}
+<div id="tread-wrapper-$item.id" class="tread-wrapper $item.toplevel">
+<a name="$item.id" ></a>
+<div class="wall-item-outside-wrapper $item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
+       <div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
+               <div class="wall-item-info wallwall" id="wall-item-info-$item.id">
+                       <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$item.id" >
+                               <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$item.id">
+                               <img src="$item.owner_photo" class="wall-item-photo$item.osparkle" id="wall-item-ownerphoto-$item.id" style="height: 80px; width: 80px;" alt="$item.owner_name" /></a>
+                       </div>
+                       <div class="wall-item-arrowphoto-wrapper" ><img src="images/larrow.gif" alt="$item.wall" /></div>
+                       <div class="wall-item-photo-wrapper wwfrom" id="wall-item-photo-wrapper-$item.id" 
+                               onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')"
+                onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
+                               <img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" /></a>
+                               <span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
+                <div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
+                    <ul>
+                        $item.item_photo_menu
+                    </ul>
+                </div>
+
+                       </div>
+                       <div class="wall-item-photo-end"></div>
+                       <div class="wall-item-wrapper" id="wall-item-wrapper-$item.id" >
+                               {{ if $item.lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /></div>
+                               {{ else }}<div class="wall-item-lock"></div>{{ endif }} 
+                               <div class="wall-item-location" id="wall-item-location-$item.id">$item.location</div>
+                       </div>
+               </div>
+               <div class="wall-item-author">
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a> $item.to <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-name-link"><span class="wall-item-name$item.osparkle" id="wall-item-ownername-$item.id">$item.owner_name</span></a> $item.vwall<br />
+                               <div class="wall-item-ago"  id="wall-item-ago-$item.id" title="$item.localtime">$item.ago</div>                         
+               </div>                  
+               <div class="wall-item-content" id="wall-item-content-$item.id" >
+                       <div class="wall-item-title" id="wall-item-title-$item.id">$item.title</div>
+                       <div class="wall-item-title-end"></div>
+                       <div class="wall-item-body" id="wall-item-body-$item.id" >$item.body
+                                       <div class="body-tag">
+                                               {{ for $item.tags as $tag }}
+                                                       <span class='tag'>$tag</span>
+                                               {{ endfor }}
+                                       </div>
+                       </div>
+               </div>
+               <div class="wall-item-tools" id="wall-item-tools-$item.id">
+                       {{ if $item.vote }}
+                       <div class="wall-item-like-buttons" id="wall-item-like-buttons-$item.id">
+                               <a href="#" class="icon like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false"></a>
+                               <a href="#" class="icon dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
+                               {{ if $item.vote.share }}<a href="#" class="icon recycle wall-item-share-buttons" title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>{{ endif }}
+                               <img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
+                       </div>
+                       {{ endif }}
+                       {{ if $item.plink }}
+                               <div class="wall-item-links-wrapper"><a href="$item.plink.href" title="$item.plink.title" target="external-link" class="icon remote-link$item.sparkle"></a></div>
+                       {{ endif }}
+                       {{ if $item.edpost }}
+                               <a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
+                       {{ endif }}
+                        
+                       {{ if $item.star }}
+                       <a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item icon $item.isstarred" title="$item.star.toggle"></a>
+                       <a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item icon tagged" title="$item.star.tagger"></a>
+                       {{ endif }}
+                       {{ if $item.filer }}
+                       <a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item filer-icon" title="$item.filer"></a>
+                       {{ endif }}                     
+                       
+                       <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$item.id" >
+                               {{ if $item.drop.dropping }}<a href="item/drop/$item.id" onclick="return confirmDelete();" class="icon drophide" title="$item.drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
+                       </div>
+                               {{ if $item.drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$item.drop.select" class="item-select" name="itemselected[]" value="$item.id" />{{ endif }}
+                       <div class="wall-item-delete-end"></div>
+               </div>
+       </div>  
+       <div class="wall-item-wrapper-end"></div>
+       <div class="wall-item-like $item.indent" id="wall-item-like-$item.id">$item.like</div>
+       <div class="wall-item-dislike $item.indent" id="wall-item-dislike-$item.id">$item.dislike</div>
+
+                       {{ if $item.threaded }}
+                       {{ if $item.comment }}
+                       <div class="wall-item-comment-wrapper $item.indent" >
+                               $item.comment
+                       </div>
+                       {{ endif }}
+                       {{ endif }}
+
+<div class="wall-item-outside-wrapper-end $item.indent" ></div>
+</div>
+{{ for $item.children as $item }}
+       {{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+{{ if $item.flatten }}
+<div class="wall-item-comment-wrapper" >
+       $item.comment
+</div>
+{{ endif }}
+</div>
+{{if $item.comment_lastcollapsed}}</div>{{endif}}