]> git.mxchange.org Git - friendica.git/commitdiff
Merge remote branch 'upstream/master'
authorMichael <icarus@dabo.de>
Fri, 2 Mar 2012 09:34:18 +0000 (10:34 +0100)
committerMichael <icarus@dabo.de>
Fri, 2 Mar 2012 09:34:18 +0000 (10:34 +0100)
50 files changed:
.gitignore
LICENSE
README
boot.php
build.xml [new file with mode: 0644]
database.sql
include/Scrape.php
include/acl_selectors.php
include/conversation.php
include/enotify.php
include/items.php
include/template_processor.php
include/text.php
library/phpsec/Net/SSH1.php
library/spam/b8/storage/storage_frndc.php
mod/admin.php
mod/contacts.php
mod/dfrn_confirm.php
mod/display.php
mod/group.php
mod/network.php
mod/notify.php
mod/ping.php
mod/settings.php
mod/viewcontacts.php
update.php
util/db_update.php
util/docblox_errorchecker.php [new file with mode: 0644]
view/contact_template.tpl
view/conversation.tpl
view/group_edit.tpl
view/group_new.tpl [deleted file]
view/groupeditor.tpl [new file with mode: 0644]
view/search_item.tpl
view/theme/diabook [new submodule]
view/theme/dispy/search_item.tpl
view/theme/dispy/wall_item.tpl
view/theme/dispy/wallwall_item.tpl
view/theme/duepuntozero/conversation.tpl
view/theme/duepuntozero/search_item.tpl
view/theme/duepuntozero/wall_item.tpl
view/theme/duepuntozero/wallwall_item.tpl
view/theme/quattro/colors.less
view/theme/quattro/quattro.less
view/theme/quattro/style.css
view/theme/vier/search_item.tpl
view/theme/vier/wall_item.tpl
view/theme/vier/wallwall_item.tpl
view/wall_item.tpl
view/wallwall_item.tpl

index 3dfb8a903a4e7a9587c7d3c25538ff43a7aee996..6302bc1c8bcdd16345778ff3186ca5fec060b4a6 100755 (executable)
@@ -10,3 +10,11 @@ home.html
 addon
 *~
 
+#ignore documentation, it should be newly built 
+doc/api
+
+#ignore config files from eclipse, we don't want IDE files in our repository
+.project
+.buildpath
+.externalToolBuilders
+.settings
diff --git a/LICENSE b/LICENSE
index 65ec68b9c2c7a35cf2a84eb7de557f19943213a7..15c3e825b6f34735a6f11f2ffda566be93eb8c13 100755 (executable)
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2010, 2011 the Friendica Project
+Copyright (c) 2010-2012 the Friendica Project
 All rights reserved.
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
diff --git a/README b/README
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..152d481eac1eb80895c1954956e697238705de6c 100644 (file)
--- a/README
+++ b/README
@@ -0,0 +1,4 @@
+Friendica Social Communications Server
+======================================
+
+Welcome to the free social web.
index bac7861c07880c91ff1baa5c0d864d51680731ff..19728b6ba93e35ce3cc22099e08e29a591c420f1 100755 (executable)
--- a/boot.php
+++ b/boot.php
@@ -9,9 +9,9 @@ require_once('include/nav.php');
 require_once('include/cache.php');
 
 define ( 'FRIENDICA_PLATFORM',     'Friendica');
-define ( 'FRIENDICA_VERSION',      '2.3.1264' );
+define ( 'FRIENDICA_VERSION',      '2.3.1268' );
 define ( 'DFRN_PROTOCOL_VERSION',  '2.22'    );
-define ( 'DB_UPDATE_VERSION',      1128      );
+define ( 'DB_UPDATE_VERSION',      1131      );
 
 define ( 'EOL',                    "<br />\r\n"     );
 define ( 'ATOM_TIME',              'Y-m-d\TH:i:s\Z' );
diff --git a/build.xml b/build.xml
new file mode 100644 (file)
index 0000000..83c5300
--- /dev/null
+++ b/build.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<project name="friendica" default="test">
+
+       <!-- =================================== -->
+       <!-- Target: test -->
+       <!-- this target runs all test files -->
+       <!-- =================================== -->
+
+       <target name="test">
+               <!-- there are no tests by now, so, nothing to do -->
+       </target>
+
+       <!-- ===================================================== -->
+       <!-- Target: clean-doc -->
+       <!-- this target removes documentation from a previous run -->
+       <!-- ===================================================== -->
+       <target name="doc-clean">
+               <echo msg="Removing old documentation..." />
+               <delete dir="./doc/api/" />
+               <echo msg="Generate documentation directory..." />
+               <mkdir dir="./doc/api/" />
+       </target>
+
+       <!-- ====================================== -->
+       <!-- Target: doc -->
+       <!-- this target builds all documentation -->
+       <!-- ====================================== -->
+       <target name="doc" depends="doc-clean">
+               <echo msg="Building documentation..." />
+               <docblox title="Friendica API" destdir="./doc/api">
+                       <fileset dir=".">
+                               <include name="**/*.php" />
+                       </fileset>
+               </docblox>
+       </target>
+
+</project>
index 349dd2a27b247812ac7459b3e96faedcebcd5f95..35c257f021b97fd9a3e52873452bbecb29522602 100755 (executable)
@@ -216,6 +216,7 @@ CREATE TABLE IF NOT EXISTS `item` (
   `tag` mediumtext NOT NULL,
   `attach` mediumtext NOT NULL,
   `inform` mediumtext NOT NULL,
+  `file` mediumtext NOT NULL,
   `location` char(255) NOT NULL,
   `coord` char(255) NOT NULL,
   `allow_cid` mediumtext NOT NULL,
@@ -262,6 +263,7 @@ CREATE TABLE IF NOT EXISTS `item` (
   FULLTEXT KEY `title` (`title`),
   FULLTEXT KEY `body` (`body`),
   FULLTEXT KEY `tag` (`tag`),
+  FULLTEXT KEY `file` (`file`),
   FULLTEXT KEY `allow_cid` (`allow_cid`),
   FULLTEXT KEY `allow_gid` (`allow_gid`),
   FULLTEXT KEY `deny_cid` (`deny_cid`),
@@ -752,14 +754,18 @@ CREATE TABLE IF NOT EXISTS `notify` (
 `msg` MEDIUMTEXT NOT NULL ,
 `uid` INT NOT NULL ,
 `link` CHAR( 255 ) NOT NULL ,
+`parent` INT( 11 ) NOT NULL,
 `seen` TINYINT( 1 ) NOT NULL DEFAULT '0',
 `verb` CHAR( 255 ) NOT NULL,
 `otype` CHAR( 16 ) NOT NULL,
 INDEX ( `hash` ),
 INDEX ( `type` ),
 INDEX ( `uid` ),
+INDEX ( `link` ),
+INDEX ( `parent` ),
 INDEX ( `seen` ),
-INDEX ( `date` )
+INDEX ( `date` ),
+INDEX ( `otype` )
 ) ENGINE = MyISAM DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `item_id` (
@@ -844,6 +850,7 @@ CREATE TABLE IF NOT EXISTS `spam` (
 `spam` INT NOT NULL DEFAULT '0',
 `ham` INT NOT NULL DEFAULT '0',
 `term` CHAR(255) NOT NULL,
+`date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
 INDEX ( `uid` ),
 INDEX ( `spam` ),
 INDEX ( `ham` ),
index 4c4ad3cdb935233d35bc820ff2b607c5c06553da..8344aa7373338d6dc938dbb0ccaf318f8588327d 100755 (executable)
@@ -255,6 +255,11 @@ function scrape_feed($url) {
                                }
                        }
                }
+               // perhaps an RSS version 1 feed with a generic or incorrect content-type?
+               if(stristr($s,'</item>')) {
+                       $ret['feed_rss'] = $url;
+                       return $ret;
+               }
        }
 
        try {
index 6070b7db21124d046d2a197d7532fd6ea55a08f5..67d8cebdebde0989efb5922730625c69605a39d6 100755 (executable)
@@ -1,6 +1,11 @@
 <?php
+/**
+ * 
+ */
 
-
+/**
+ * @package acl_selectors 
+ */
 function group_select($selname,$selclass,$preselected = false,$size = 4) {
 
        $a = get_app();
index 2ef37694dc2dd1a668f4c7bef941538f8e140a87..f4740688cd9b0775336f30cfa8433b69e62e0da3 100755 (executable)
@@ -6,11 +6,6 @@
 function localize_item(&$item){
 
        $Text = $item['body'];
-
-
-       // find private image (w/data url) if present and convert image 
-       // link to a magic-auth redirect.
-
        $saved_image = '';
        $img_start = strpos($Text,'[img]data:');
        $img_end = strpos($Text,'[/img]');
@@ -184,6 +179,7 @@ function localize_item(&$item){
  * that are based on unique features of the calling module.
  *
  */
+ if(!function_exists('conversation')){
 function conversation(&$a, $items, $mode, $update, $preview = false) {
 
        require_once('bbcode.php');
@@ -231,13 +227,13 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
        $items = $cb['items'];
 
        $cmnt_tpl    = get_markup_template('comment_item.tpl');
-       $tpl         = get_markup_template('wall_item.tpl');
-       $wallwall    = get_markup_template('wallwall_item.tpl');
+       $tpl         = 'wall_item.tpl';
+       $wallwall    = 'wallwall_item.tpl';
        $hide_comments_tpl = get_markup_template('hide_comments.tpl');
 
        $alike = array();
        $dlike = array();
-       $o = "";
+       
        
        // array with html for each thread (parent+comments)
        $threads = array();
@@ -250,7 +246,8 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                        // "New Item View" on network page or search page results 
                        // - just loop through the items and format them minimally for display
 
-                       $tpl = get_markup_template('search_item.tpl');
+                       //$tpl = get_markup_template('search_item.tpl');
+                       $tpl = 'search_item.tpl';
 
                        foreach($items as $item) {
                                $threadsid++;
@@ -316,43 +313,46 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
 
                                $body = prepare_body($item,true);
                                
-                               $tmp_item = replace_macros($tpl,array(
-                                       '$id' => (($preview) ? 'P0' : $item['item_id']),
-                                       '$linktitle' => sprintf( t('View %s\'s profile @ %s'), $profile_name, ((strlen($item['author-link'])) ? $item['author-link'] : $item['url'])),
-                                       '$profile_url' => $profile_link,
-                                       '$item_photo_menu' => item_photo_menu($item),
-                                       '$name' => template_escape($profile_name),
-                                       '$sparkle' => $sparkle,
-                                       '$lock' => $lock,
-                                       '$thumb' => $profile_avatar,
-                                       '$title' => template_escape($item['title']),
-                                       '$body' => template_escape($body),
-                                       '$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' => '',
-                                       '$owner_name' => template_escape($owner_name),
-                                       '$owner_url' => $owner_url,
-                                       '$owner_photo' => $owner_photo,
-                                       '$plink' => get_plink($item),
-                                       '$edpost' => false,
-                                       '$isstarred' => $isstarred,
-                                       '$star' => $star,
-                                       '$drop' => $drop,
-                                       '$vote' => $likebuttons,
-                                       '$like' => '',
-                                       '$dislike' => '',
-                                       '$comment' => '',
-                                       '$conv' => (($preview) ? '' : array('href'=> $a->get_baseurl() . '/display/' . $nickname . '/' . $item['id'], 'title'=> t('View in context'))),
-                                       '$previewing' => $previewing,
-                                       '$wait' => t('Please wait'),
-                               ));
+                               //$tmp_item = replace_macros($tpl,array(
+                               $tmp_item = array(
+                                       'template' => $tpl,
+                                       'id' => (($preview) ? 'P0' : $item['item_id']),
+                                       'linktitle' => sprintf( t('View %s\'s profile @ %s'), $profile_name, ((strlen($item['author-link'])) ? $item['author-link'] : $item['url'])),
+                                       'profile_url' => $profile_link,
+                                       'item_photo_menu' => item_photo_menu($item),
+                                       'name' => template_escape($profile_name),
+                                       'sparkle' => $sparkle,
+                                       'lock' => $lock,
+                                       'thumb' => $profile_avatar,
+                                       'title' => template_escape($item['title']),
+                                       'body' => template_escape($body),
+                                       'text' => strip_tags(template_escape($body)),
+                                       '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' => '',
+                                       'owner_name' => template_escape($owner_name),
+                                       'owner_url' => $owner_url,
+                                       'owner_photo' => $owner_photo,
+                                       'plink' => get_plink($item),
+                                       'edpost' => false,
+                                       'isstarred' => $isstarred,
+                                       'star' => $star,
+                                       'drop' => $drop,
+                                       'vote' => $likebuttons,
+                                       'like' => '',
+                                       'dislike' => '',
+                                       'comment' => '',
+                                       'conv' => (($preview) ? '' : array('href'=> $a->get_baseurl() . '/display/' . $nickname . '/' . $item['id'], 'title'=> t('View in context'))),
+                                       'previewing' => $previewing,
+                                       'wait' => t('Please wait'),
+                               );
 
                                $arr = array('item' => $item, 'output' => $tmp_item);
                                call_hooks('display_item', $arr);
 
                                $threads[$threadsid]['id'] = $item['item_id'];
-                               $threads[$threadsid]['html'] .= $arr['output'];
+                               $threads[$threadsid]['items'] = array($arr['output']);
 
                        }
 
@@ -385,6 +385,8 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                        }
 
                        $comments_collapsed = false;
+                       $comment_lastcollapsed = false;
+                       $comment_firstcollapsed = false;
                        $blowhard = 0;
                        $blowhard_count = 0;
 
@@ -438,10 +440,12 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
 
                                        $comments_seen = 0;
                                        $comments_collapsed = false;
+                                       $comment_lastcollapsed  = false;
+                                       $comment_firstcollapsed = false;
                                        
                                        $threadsid++;
                                        $threads[$threadsid]['id'] = $item['item_id'];
-                                       $threads[$threadsid]['html'] = "";
+                                       $threads[$threadsid]['items'] = array();
 
                                }
                                else {
@@ -449,6 +453,8 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                                        if((! $toplevelpost) && (! $toplevelprivate) && ($item['private']) && ($profile_owner != local_user()))
                                                continue;
                                        $comments_seen ++;
+                                       $comment_lastcollapsed  = false;
+                                       $comment_firstcollapsed = false;
                                }       
 
                                $override_comment_box = ((($page_writeable) && ($item_writeable)) ? true : false);
@@ -456,23 +462,17 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
 
 
                                if(($comments[$item['parent']] > 2) && ($comments_seen <= ($comments[$item['parent']] - 2)) && ($item['gravity'] == 6)) {
-                                       if(! $comments_collapsed) {
-
-                                               // IMPORTANT: the closing </div> in the hide_comments template
-                                               // is supplied below in code. 
 
-                                               $threads[$threadsid]['html'] .= replace_macros($hide_comments_tpl,array(
-                                                       '$id' => $item['parent'],
-                                                       '$num_comments' => sprintf( tt('%d comment','%d comments',$comments[$item['parent']]),
-                                                               $comments[$item['parent']]),
-                                                       '$display' => 'none',
-                                                       '$hide_text' => t('show more')
-                                               ));
+                                       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))) {
-                                       $threads[$threadsid]['html'] .= '</div>';
+
+                                       $comment_lastcollapsed = true;
                                }
 
                                $redirect_url = $a->get_baseurl() . '/redir/' . $item['cid'] ;
@@ -649,63 +649,72 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                                // 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(split("/",$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'), $profile_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,
+                                       'drop' => $drop,
+                                       'vote' => $likebuttons,
+                                       'like' => $like,
+                                       'dislike' => $dislike,
+                                       'comment' => $comment,
+                                       'previewing' => $previewing,
+                                       'wait' => t('Please wait'),
 
-                               $tmp_item = replace_macros($template,array(
-                                       '$type' => implode("",array_slice(explode("/",$item['verb']),-1)),
-                                       '$tags' => $tags,
-                                       '$body' => 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'), $profile_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,
-                                       '$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]['html'] .= $arr['output'];
+                               $threads[$threadsid]['items'][] = $arr['output'];
                        }
                }
        }
 
-
        $page_template = get_markup_template("conversation.tpl");
        $o .= replace_macros($page_template, array(
+               '$baseurl' => $a->get_baseurl(),
+               '$mode' => $mode,
+               '$user' => $a->user,
                '$threads' => $threads,
                '$dropping' => ($dropping?t('Delete Selected Items'):False),
        ));
 
        return $o;
-} 
+}}
 
 function best_link_url($item,&$sparkle) {
 
index 67e0011b8c3187891c17265f6c4287f651fb5eb5..a505f1f04011f2f4ff659a78a2a7546a47a7cb97 100755 (executable)
@@ -25,9 +25,12 @@ function notification($params) {
                $title = $body = '';
        }
 
+       // e.g. "your post", "David's photo", etc.
+       $possess_desc = t('%s <!item_type!>');
+
        if($params['type'] == NOTIFY_MAIL) {
 
-               $subject =      sprintf( t('New mail received at %s'),$sitename);
+               $subject =      sprintf( t('[Friendica:Notify] New mail received at %s'),$sitename);
 
                $preamble = sprintf( t('%s sent you a new private message at %s.'),$params['source_name'],$sitename);
                $epreamble = sprintf( t('%s sent you %s.'),'[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('a private message') . '[/url]');
@@ -38,17 +41,43 @@ function notification($params) {
        }
 
        if($params['type'] == NOTIFY_COMMENT) {
-               logger("notification: params = " . print_r($params, true), LOGGER_DEBUG);
+//             logger("notification: params = " . print_r($params, true), LOGGER_DEBUG);
 
                $parent_id = $params['parent'];
+
+
+               // if it's a post figure out who's post it is.
+
+               $p = null;
+
+               if($params['otype'] === 'item' && $parent_id) {
+                       $p = q("select * from item where id = %d and uid = %d limit 1",
+                               intval($parent_id),
+                               intval($params['uid'])
+                       );
+               }
+
+               $possess_desc = str_replace('<!item_type!>',item_post_type($p[0]),$possess_desc);
+
+               // "a post"
+               $dest_str = sprintf($possess_desc,'a');
+
+               // "George Bull's post"
+               if($p)
+                       $dest_str = sprintf($possess_desc,sprintf( t("%s's"),$p[0]['author-name']));
                
+               // "your post"
+               if($p[0]['owner-name'] == $p[0]['author-name'] && $p[0]['wall'])
+                       $dest_str = sprintf($possess_desc, t('your') );
+
                // Some mail softwares relies on subject field for threading.
                // So, we cannot have different subjects for notifications of the same thread.
                // Before this we have the name of the replier on the subject rendering 
                // differents subjects for messages on the same thread.
-               $subject = sprintf( t('Someone commented on item #%d at %s'), $parent_id, $sitename);
+
+               $subject = sprintf( t('[Friendica:Notify] Comment to conversation #%d by %s'), $parent_id, $params['source_name']);
                $preamble = sprintf( t('%s commented on an item/conversation you have been following.'), $params['source_name']); 
-               $epreamble = sprintf( t('%s commented in %s.'), '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('a watched conversation') . '[/url]'); 
+               $epreamble = sprintf( t('%s commented on %s.'), '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . $dest_str . '[/url]'); 
 
                $sitelink = t('Please visit %s to view and/or reply to the conversation.');
                $tsitelink = sprintf( $sitelink, $siteurl );
@@ -57,7 +86,10 @@ function notification($params) {
        }
 
        if($params['type'] == NOTIFY_WALL) {
-               $preamble = $subject =  sprintf( t('%s posted to your profile wall at %s') , $params['source_name'], $sitename);
+               $subject = sprintf( t('[Friendica:Notify] %s posted to your profile wall') , $params['source_name']);
+
+               $preamble = sprintf( t('%s posted to your profile wall at %s') , $params['source_name'], $sitename);
+               
                $epreamble = sprintf( t('%s posted to %s') , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('your profile wall.') . '[/url]'); 
                
                $sitelink = t('Please visit %s to view and/or reply to the conversation.');
@@ -67,7 +99,8 @@ function notification($params) {
        }
 
        if($params['type'] == NOTIFY_TAGSELF) {
-               $preamble = $subject =  sprintf( t('%s tagged you at %s') , $params['source_name'], $sitename);
+               $subject =      sprintf( t('[Friendica:Notify] %s tagged you') , $params['source_name']);
+               $preamble = sprintf( t('%s tagged you at %s') , $params['source_name'], $sitename);
                $epreamble = sprintf( t('%s %s.') , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=' . $params['link'] . ']' . t('tagged you') . '[/url]'); 
 
                $sitelink = t('Please visit %s to view and/or reply to the conversation.');
@@ -77,7 +110,8 @@ function notification($params) {
        }
 
        if($params['type'] == NOTIFY_TAGSHARE) {
-               $preamble = $subject =  sprintf( t('%s tagged your post at %s') , $params['source_name'], $sitename);
+               $subject =      sprintf( t('[Friendica:Notify] %s tagged your post') , $params['source_name']);
+               $preamble = sprintf( t('%s tagged your post at %s') , $params['source_name'], $sitename);
                $epreamble = sprintf( t('%s tagged %s') , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('your post') . '[/url]' ); 
 
                $sitelink = t('Please visit %s to view and/or reply to the conversation.');
@@ -87,7 +121,7 @@ function notification($params) {
        }
 
        if($params['type'] == NOTIFY_INTRO) {
-               $subject = sprintf( t('Introduction received at %s'), $sitename);
+               $subject = sprintf( t('[Friendica:Notify] Introduction received'));
                $preamble = sprintf( t('You\'ve received an introduction from \'%s\' at %s'), $params['source_name'], $sitename); 
                $epreamble = sprintf( t('You\'ve received %s from %s.'), '[url=$itemlink]' . t('an introduction') . '[/url]' , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]'); 
                $body = sprintf( t('You may visit their profile at %s'),$params['source_link']);
@@ -99,7 +133,7 @@ function notification($params) {
        }
 
        if($params['type'] == NOTIFY_SUGGEST) {
-               $subject = sprintf( t('Friend suggestion received at %s'), $sitename);
+               $subject = sprintf( t('[Friendica:Notify] Friend suggestion received'));
                $preamble = sprintf( t('You\'ve received a friend suggestion from \'%s\' at %s'), $params['source_name'], $sitename); 
                $epreamble = sprintf( t('You\'ve received %s for %s from %s.'),
                        '[url=$itemlink]' . t('a friend suggestion') . '[/url]',
@@ -143,6 +177,7 @@ function notification($params) {
        $datarray['date']  = datetime_convert();
        $datarray['uid']   = $params['uid'];
        $datarray['link']  = $itemlink;
+       $datarray['parent'] = $parent_id;
        $datarray['type']  = $params['type'];
        $datarray['verb']  = $params['verb'];
        $datarray['otype'] = $params['otype'];
@@ -151,8 +186,8 @@ function notification($params) {
 
        // create notification entry in DB
 
-       $r = q("insert into notify (hash,name,url,photo,date,uid,link,type,verb,otype)
-               values('%s','%s','%s','%s','%s',%d,'%s',%d,'%s','%s')",
+       $r = q("insert into notify (hash,name,url,photo,date,uid,link,parent,type,verb,otype)
+               values('%s','%s','%s','%s','%s',%d,'%s',%d,%d,'%s','%s')",
                dbesc($datarray['hash']),
                dbesc($datarray['name']),
                dbesc($datarray['url']),
@@ -160,6 +195,7 @@ function notification($params) {
                dbesc($datarray['date']),
                intval($datarray['uid']),
                dbesc($datarray['link']),
+               intval($datarray['parent']),
                intval($datarray['type']),
                dbesc($datarray['verb']),
                dbesc($datarray['otype'])
@@ -237,9 +273,12 @@ intval($params['uid']), LOGGER_DEBUG);
                $datarray['preamble'] = $preamble;
                $datarray['sitename'] = $sitename;
                $datarray['siteurl'] = $siteurl;
+               $datarray['type'] = $params['type'];
+               $datarray['parent'] = $params['parent'];
                $datarray['source_name'] = $params['source_name'];
                $datarray['source_link'] = $params['source_link'];
                $datarray['source_photo'] = $params['source_photo'];
+               $datarray['uid'] = $params['uid'];
                $datarray['username'] = $params['to_name'];
                $datarray['hsitelink'] = $hsitelink;
                $datarray['tsitelink'] = $tsitelink;
index 7d52571c25d6a176d32a0b70540df807102ac2ed..a1254e165ac9cbc162e4da590cb61eb04339ed9d 100755 (executable)
@@ -2325,35 +2325,44 @@ function local_delivery($importer,$data) {
 
                                        if(count($myconv)) {
                                                $importer_url = $a->get_baseurl() . '/profile/' . $importer['nickname'];
-                                               foreach($myconv as $conv) {
 
-                                                       if(! link_compare($conv['author-link'],$importer_url))
-                                                               continue;
+                                               // first make sure this isn't our own post coming back to us from a wall-to-wall event
+                                               if(! link_compare($datarray['author-link'],$importer_url)) {
 
-                                                       require_once('include/enotify.php');
                                                        
-                                                       $conv_parent = $conv['parent'];
-
-                                                       notification(array(
-                                                               'type'         => NOTIFY_COMMENT,
-                                                               'notify_flags' => $importer['notify-flags'],
-                                                               'language'     => $importer['language'],
-                                                               'to_name'      => $importer['username'],
-                                                               'to_email'     => $importer['email'],
-                                                               'uid'          => $importer['importer_uid'],
-                                                               'item'         => $datarray,
-                                                               'link'             => $a->get_baseurl() . '/display/' . $importer['nickname'] . '/' . $posted_id,
-                                                               'source_name'  => stripslashes($datarray['author-name']),
-                                                               'source_link'  => $datarray['author-link'],
-                                                               'source_photo' => ((link_compare($datarray['author-link'],$importer['url'])) 
-                                                                       ? $importer['thumb'] : $datarray['author-avatar']),
-                                                               'verb'         => ACTIVITY_POST,
-                                                               'otype'        => 'item',
-                                                               'parent'       => $conv_parent,
+                                                       foreach($myconv as $conv) {
 
-                                                       ));
+                                                               // now if we find a match, it means we're in this conversation
+       
+                                                               if(! link_compare($conv['author-link'],$importer_url))
+                                                                       continue;
 
-                                                       break;
+                                                               require_once('include/enotify.php');
+                                                               
+                                                               $conv_parent = $conv['parent'];
+
+                                                               notification(array(
+                                                                       'type'         => NOTIFY_COMMENT,
+                                                                       'notify_flags' => $importer['notify-flags'],
+                                                                       'language'     => $importer['language'],
+                                                                       'to_name'      => $importer['username'],
+                                                                       'to_email'     => $importer['email'],
+                                                                       'uid'          => $importer['importer_uid'],
+                                                                       'item'         => $datarray,
+                                                                       'link'             => $a->get_baseurl() . '/display/' . $importer['nickname'] . '/' . $posted_id,
+                                                                       'source_name'  => stripslashes($datarray['author-name']),
+                                                                       'source_link'  => $datarray['author-link'],
+                                                                       'source_photo' => ((link_compare($datarray['author-link'],$importer['url'])) 
+                                                                               ? $importer['thumb'] : $datarray['author-avatar']),
+                                                                       'verb'         => ACTIVITY_POST,
+                                                                       'otype'        => 'item',
+                                                                       'parent'       => $conv_parent,
+
+                                                               ));
+
+                                                               // only send one notification
+                                                               break;
+                                                       }
                                                }
                                        }
                                }
@@ -2424,7 +2433,7 @@ function local_delivery($importer,$data) {
                        // This is my contact on another system, but it's really me.
                        // Turn this into a wall post.
 
-                       if($contact['remote_self'])
+                       if($importer['remote_self'])
                                $datarray['wall'] = 1;
 
                        $datarray['parent-uri'] = $item_id;
index 28c3f07ddd1e46dfc477deb4f0fc9b7a1479d6c4..b4d444e1c622ee7d472d00d990ba8fbb3369531c 100755 (executable)
                 * {{ inc <templatefile> [with $var1=$var2] }}{{ endinc }}
                 */
                private function _replcb_inc($args){
-                       list($tplfile, $newctx) = array_map('trim', explode("with",$args[2]));
+                       if (strpos($args[2],"with")) {
+                               list($tplfile, $newctx) = array_map('trim', explode("with",$args[2]));
+                       } else {
+                               $tplfile = trim($args[2]);
+                               $newctx = null;
+                       }
+                       
+                       if ($tplfile[0]=="$") $tplfile = $this->_get_var($tplfile);
+                       
                        $this->_push_stack();
                        $r = $this->r;
                        if (!is_null($newctx)) {
index 1f5d4a3e12ae035a094f9129eb3a4007095a391e..4276b7fcb39263bce5b30d3d5622b24462198c98 100755 (executable)
@@ -786,6 +786,7 @@ function smilies($s, $sample = false) {
                }
        }
        else {
+               $params['string'] = preg_replace_callback('/&lt;(3+)/','preg_heart',$params['string']);
                $s = str_replace($params['texts'],$params['icons'],$params['string']);
        }
 
@@ -804,7 +805,18 @@ function smile_decode($m) {
        return(str_replace($m[1],base64url_decode($m[1]),$m[0]));
 }
 
+// expand <3333 to the correct number of hearts
 
+function preg_heart($x) {
+       $a = get_app();
+       if(strlen($x[1]) == 1)
+               return $x[0];
+       $t = '';
+       for($cnt = 0; $cnt < strlen($x[1]); $cnt ++)
+               $t .= '<img src="' . $a->get_baseurl() . '/images/smiley-heart.gif" alt="<3" />';
+       $r =  str_replace($x[0],$t,$x[0]);
+       return $r;
+}
 
 
 if(! function_exists('day_translate')) {
@@ -1201,3 +1213,16 @@ function reltoabs($text, $base)
   return $text;
 }
 
+function item_post_type($item) {
+       if(intval($item['event-id']))
+               return t('event');
+       if(strlen($item['resource-id']))
+               return t('photo');
+       if(strlen($item['verb']) && $item['verb'] !== ACTIVITY_POST)
+               return t('activity');
+       if($item['id'] != $item['parent'])
+               return t('comment');
+       return t('post');
+}
+
+
index 6986a8450d67c989a67f2b62540623fdd4b3d575..7220ee402350128756906d32168bb59844cc5b9e 100755 (executable)
@@ -730,8 +730,8 @@ class Net_SSH1 {
     /**\r
      * Reads the output of an interactive shell.\r
      *\r
-     * Requires PHP 4.3.0 or later due to the use of the stream_select() function.  If you see stuff like\r
-     * "\e[00m", you're seeing ANSI escape codes.  According to\r
+     * Requires PHP 4.3.0 or later due to the use of the stream_select() function.  If you see crap, \r
+     * you're seeing ANSI escape codes.  According to\r
      * {@link http://support.microsoft.com/kb/101875 How to Enable ANSI.SYS in a Command Window}, "Windows NT\r
      * does not support ANSI escape sequences in Win32 Console applications", so if you're a Windows user,\r
      * there's not going to be much recourse.\r
index cbc6fe81a91e0bb53df39e0d7e291c6bf87496f7..7702c108b310dc0b2090e6907170d4c0d8a2dbcd 100644 (file)
@@ -147,58 +147,8 @@ class b8_storage_frndc extends b8_storage_base
        public function connect()
        {
 
-               return TRUE;
-
-               # Are we already connected?
-               if($this->connected === TRUE)
-                       return TRUE;
-
-               # Are we using an existing passed resource?
-               if($this->config['connection'] === FALSE) {
-                       # ... yes we are, but the connection is not a resource, so return an error
-                       $this->connected = FALSE;
-                       return self::DATABASE_CONNECTION_BAD_RESOURCE;
-               }
-
-               elseif($this->config['connection'] === NULL) {
-
-                       # ... no we aren't so we have to connect.
-
-                       if($this->_connection = mysql_connect($this->config['host'], $this->config['user'], $this->config['pass'])) {
-                               if(mysql_select_db($this->config['database'], $this->_connection) === FALSE) {
-                                       $this->connected = FALSE;
-                                       return self::DATABASE_SELECT_ERROR . ": " . mysql_error();
-                               }
-                       }
-                       else {
-                               $this->connected = FALSE;
-                               return self::DATABASE_CONNECTION_ERROR;
-                       }
-
-               }
-
-               else {
-                       # ... yes we are
-                       $this->_connection = $this->config['connection'];
-               }
-
-               # Just in case ...
-               if($this->_connection === NULL) {
-                       $this->connected = FALSE;
-                       return self::DATABASE_CONNECTION_FAIL;
-               }
-
-               # Check to see if the wordlist table exists
-               if(mysql_query('DESCRIBE ' . $this->config['table_name'], $this->_connection) === FALSE) {
-                       $this->connected = FALSE;
-                       return self::DATABASE_TABLE_ACCESS_FAIL . ": " . mysql_error();
-               }
-
-               # Everything is okay and connected
                $this->connected = TRUE;
-
-               # Let's see if this is a b8 database and the version is okay
-               return $this->check_database();
+               return TRUE;
 
        }
 
@@ -235,7 +185,7 @@ class b8_storage_frndc extends b8_storage_base
                # ... and fetch the data
 
                $result = q('
-                       SELECT token, count
+                       SELECT *
                        FROM ' . $this->config['table_name'] . '
                        WHERE ' . $where . ' AND uid = ' . $uid );
 
index 0f600e3126b1b123e5cb4befe1f26de078147eb1..94bf4450328ef461f3bae30de9c9335f659e177f 100755 (executable)
@@ -366,7 +366,7 @@ function admin_page_users_post(&$a){
                                intval( $uid )
                        );
                }
-               notice( sprintf( tt("%s user blocked", "%s users blocked/unblocked", count($users)), count($users)) );
+               notice( sprintf( tt("%s user blocked/unblocked", "%s users blocked/unblocked", count($users)), count($users)) );
        }
        if (x($_POST,'page_users_delete')){
                require_once("include/Contact.php");
@@ -428,6 +428,7 @@ function admin_page_users(&$a){
                                 LEFT JOIN `contact` ON `register`.`uid` = `contact`.`uid`
                                 LEFT JOIN `user` ON `register`.`uid` = `user`.`uid`;");
        
+       
        /* get users */
 
        $total = q("SELECT count(*) as total FROM `user` where 1");
@@ -435,7 +436,8 @@ function admin_page_users(&$a){
                $a->set_pager_total($total[0]['total']);
                $a->set_pager_itemspage(100);
        }
-
+       
+       
        $users = q("SELECT `user` . * , `contact`.`name` , `contact`.`url` , `contact`.`micro`, `lastitem`.`lastitem_date`
                                FROM
                                        (SELECT MAX(`item`.`changed`) as `lastitem_date`, `item`.`uid`
@@ -469,6 +471,7 @@ function admin_page_users(&$a){
        }
        $users = array_map("_setup_users", $users);
        
+       
        $t = get_markup_template("admin_users.tpl");
        $o = replace_macros($t, array(
                // strings //
index ce352fe204c9ec3c91c9fb593b0a63c49ab60784..c99ac14520a625bac36210136305034c6d29d8e1 100755 (executable)
@@ -505,6 +505,7 @@ function contacts_content(&$a) {
                                'username' => $rr['name'],
                                'sparkle' => $sparkle,
                                'itemurl' => $rr['url'],
+                               'url' => $url,
                                'network' => network_to_name($rr['network']),
                        );
                }
index 5a24f00893b493e34ea1fff755375b6126bf3622..0bc3ea7df597550f96286b8210fc6925da788876 100644 (file)
@@ -107,7 +107,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
                 *
                 */
 
-               $r = q("SELECT * FROM `contact` WHERE ( ( `issued-id` != '' AND `issued-id` = '%s' ) OR ( `id` = %d AND `id` != 0 ) ) AND `uid` = %d LIMIT 1",
+               $r = q("SELECT * FROM `contact` WHERE ( ( `issued-id` != '' AND `issued-id` = '%s' ) OR ( `id` = %d AND `id` != 0 ) ) AND `uid` = %d AND `duplex` = 0 LIMIT 1",
                        dbesc($dfrn_id),
                        intval($cid),
                        intval($uid)
@@ -116,6 +116,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
                if(! count($r)) {
                        logger('dfrn_confirm: Contact not found in DB.'); 
                        notice( t('Contact not found.') . EOL );
+                       notice( t('This may occasionally happen if contact was requested by both persons and it has already been approved.') . EOL );
                        return;
                }
 
@@ -631,6 +632,15 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
                        xml_status(3,$message);
                }
 
+               // It's possible that the other person also requested friendship.
+               // If it is a duplex relationship, ditch the issued-id if one exists. 
+
+               if($duplex) {
+                       $r = q("UPDATE `contact` SET `issued-id` = '' WHERE `id` = %d LIMIT 1",
+                               intval($dfrn_record)
+                       );
+               }
+
                // We're good but now we have to scrape the profile photo and send notifications.
 
 
index d96be4333bebc2ac4af56d47da159c07bf29e967..f510f793df9d98b2e05356ab6c0b387da0b5a515 100755 (executable)
@@ -74,11 +74,11 @@ function display_content(&$a) {
                $x = array(
                        'is_owner' => true,
                        'allow_location' => $a->user['allow_location'],
-                       'default_location' => $a->user['default_location'],
+                       'default_location' => $a->user['default-location'],
                        'nickname' => $a->user['nickname'],
-                       'lockstate' => ((($group) || (is_array($a->user) && ((strlen($a->user['allow_cid'])) || (strlen($a->user['allow_gid'])) || (strlen($a->user['deny_cid'])) || (strlen($a->user['deny_gid']))))) ? 'lock' : 'unlock'),
-                       'acl' => populate_acl((($group || $cid) ? $def_acl : $a->user), $celeb),
-                       'bang' => (($group || $cid) ? '!' : ''),
+                       'lockstate' => ( (is_array($a->user)) && ((strlen($a->user['allow_cid'])) || (strlen($a->user['allow_gid'])) || (strlen($a->user['deny_cid'])) || (strlen($a->user['deny_gid']))) ? 'lock' : 'unlock'),
+                       'acl' => populate_acl($a->user, $celeb),
+                       'bang' => '',
                        'visitor' => 'block',
                        'profile_uid' => local_user()
                );      
index c896362ca2f83241fa22d88b6e1b78b3463e48d5..f6f8e417330f20eadcc615543451f0bcbc3d5ba6 100755 (executable)
@@ -76,14 +76,17 @@ function group_content(&$a) {
        if($switchtotext === false)
                $switchtotext = 400;
 
+       $tpl = get_markup_template('group_edit.tpl');
+       $context = array('$submit' => t('Submit'));
+
        if(($a->argc == 2) && ($a->argv[1] === 'new')) {
-               $tpl = get_markup_template('group_new.tpl');
-               $o .= replace_macros($tpl,array(
-                       '$desc' => t('Create a group of contacts/friends.'),
-                       '$name' => t('Group Name: '),
-                       '$submit' => t('Submit')
-                ));
-               return $o;
+               
+               return replace_macros($tpl, $context + array(
+                       '$title' => t('Create a group of contacts/friends.'),
+                       '$gname' => array('groupname',t('Group Name: '),$group['name'], ''),
+               ));
+
+
        }
 
        if(($a->argc == 3) && ($a->argv[1] === 'drop')) {
@@ -156,66 +159,61 @@ function group_content(&$a) {
 
                $celeb = ((($a->user['page-flags'] == PAGE_SOAPBOX) || ($a->user['page-flags'] == PAGE_COMMUNITY)) ? true : false);
 
-               $tpl = get_markup_template('group_edit.tpl');
-               $o .= replace_macros($tpl, array(
+               
+               $context = $context + array(
+                       '$title' => t('Group Editor'),
+                       '$gname' => array('groupname',t('Group Name: '),$group['name'], ''),
                        '$gid' => $group['id'],
-                       '$name' => $group['name'],
                        '$drop' => $drop_txt,
-                       '$desc' => t('Click on a contact to add or remove.'),
-                       '$title' => t('Group Editor'),
-                       '$gname' => t('Group Name: '),
-                       '$submit' => t('Submit')
-               ));
+               );
 
        }
 
        if(! isset($group))
                return;
 
-       $o .= '<div id="group-update-wrapper">';
-       if($change) 
-               $o = '';
+       $groupeditor = array(
+               'label_members' => t('Members'),
+               'members' => array(),
+               'label_contacts' => t('All Contacts'),
+               'contacts' => arraY(),
+       );
+               
 
-       $o .= '<h3>' . t('Members') . '</h3>';
-       $o .= '<div id="group-members">';
        $textmode = (($switchtotext && (count($members) > $switchtotext)) ? true : false);
        foreach($members as $member) {
                if($member['url']) {
                        $member['click'] = 'groupChangeMember(' . $group['id'] . ',' . $member['id'] . '); return true;';
-                       $o .= micropro($member,true,'mpgroup', $textmode);
+                       $groupeditor['members'][] = micropro($member,true,'mpgroup', $textmode);
                }
                else
                        group_rmv_member(local_user(),$group['name'],$member['id']);
        }
 
-       $o .= '</div><div id="group-members-end"></div>';
-       $o .= '<hr id="group-separator" />';
-       
-       $o .= '<h3>' . t('All Contacts') . '</h3>';
-       $o .= '<div id="group-all-contacts">';
+       $r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `blocked` = 0 and `pending` = 0 and `self` = 0 ORDER BY `name` ASC",
+               intval(local_user())
+       );
 
-               $r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `blocked` = 0 and `pending` = 0 and `self` = 0 ORDER BY `name` ASC",
-                       intval(local_user())
-               );
-
-               if(count($r)) {
-                       $textmode = (($switchtotext && (count($r) > $switchtotext)) ? true : false);
-                       foreach($r as $member) {
-                               if(! in_array($member['id'],$preselected)) {
-                                       $member['click'] = 'groupChangeMember(' . $group['id'] . ',' . $member['id'] . '); return true;';
-                                       $o .= micropro($member,true,'mpall', $textmode);
-                               }
+       if(count($r)) {
+               $textmode = (($switchtotext && (count($r) > $switchtotext)) ? true : false);
+               foreach($r as $member) {
+                       if(! in_array($member['id'],$preselected)) {
+                               $member['click'] = 'groupChangeMember(' . $group['id'] . ',' . $member['id'] . '); return true;';
+                               $groupeditor['contacts'][] = micropro($member,true,'mpall', $textmode);
                        }
                }
+       }
 
-               $o .= '</div><div id="group-all-contacts-end"></div>';
+       $context['$groupeditor'] = $groupeditor;
+       $context['$desc'] = t('Click on a contact to add or remove.');
 
        if($change) {
-               echo $o;
+               $tpl = get_markup_template('groupeditor.tpl');
+               echo replace_macros($tpl, $context);
                killme();
        }
-       $o .= '</div>';
-       return $o;
+       
+       return replace_macros($tpl, $context);
 
 }
 
index 03a671b6157d51dc7939dfbfa024eb6ca9bf7fe2..894ac48ed67e3554d7265841b27f5a34b7540ad5 100755 (executable)
@@ -263,7 +263,7 @@ function network_content(&$a, $update = 0) {
                $x = array(
                        'is_owner' => true,
                        'allow_location' => $a->user['allow_location'],
-                       'default_location' => $a->user['default_location'],
+                       'default_location' => $a->user['default-location'],
                        'nickname' => $a->user['nickname'],
                        'lockstate' => ((($group) || (is_array($a->user) && ((strlen($a->user['allow_cid'])) || (strlen($a->user['allow_gid'])) || (strlen($a->user['deny_cid'])) || (strlen($a->user['deny_gid']))))) ? 'lock' : 'unlock'),
                        'acl' => populate_acl((($group || $cid) ? $def_acl : $a->user), $celeb),
index e6a7a885966418d35c9dcf163410c8dfe74e1cfe..a572b15344269f8c4d0bcd9776c6c1cd8b696195 100644 (file)
@@ -11,8 +11,10 @@ function notify_init(&$a) {
                        intval(local_user())
                );
                if(count($r)) {
-                       q("update notify set seen = 1 where id = %d and uid = %d limit 1",
-                               intval($a->argv[2]),
+                       q("update notify set seen = 1 where ( link = '%s' or ( parent != 0 and parent = %d and otype = '%s' )) and uid = %d",
+                               dbesc($r[0]['link']),
+                               intval($r[0]['parent']),
+                               dbesc($r[0]['otype']),
                                intval(local_user())
                        );
                        goaway($r[0]['link']);
index 7380ff7d051e915c25b2450663bdad36827849ca..1562254b1731c19f6732e8edf3b43201575f6472 100644 (file)
@@ -14,10 +14,29 @@ function ping_init(&$a) {
 
                $firehose = intval(get_pconfig(local_user(),'system','notify_full'));
 
-               $z = q("select * from notify where uid = %d
-                       order by seen asc, date desc limit 0, 50",
+               $t = q("select count(*) as total from notify where uid = %d and seen = 0",
                        intval(local_user())
                );
+               if($t && intval($t[0]['total']) > 49) {
+                       $z = q("select * from notify where uid = %d
+                               and seen = 0 order by date desc limit 0, 50",
+                               intval(local_user())
+                       );
+               }
+               else {
+                       $z1 = q("select * from notify where uid = %d
+                               and seen = 0 order by date desc limit 0, 50",
+                               intval(local_user())
+                       );
+
+                       $z2 = q("select * from notify where uid = %d
+                               and seen = 1 order by date desc limit 0, %d",
+                               intval(local_user()),
+                               intval(50 - intval($t[0]['total']))
+                       );
+                       $z = array_merge($z1,$z2);
+               }
+
 
 
                $tags = array();
index 90eb9dbd78870b02451d6cd88385a52031e59456..a9d00bc981e767449e0df2e3b3d2d8df50abab6b 100755 (executable)
@@ -50,6 +50,8 @@ function settings_post(&$a) {
                return;
        }
 
+       $old_page_flags = $a->user['page-flags'];
+
        if(($a->argc > 1) && ($a->argv[1] === 'oauth') && x($_POST,'remove')){
                $key = $_POST['remove'];
                q("DELETE FROM tokens WHERE id='%s' AND uid=%d",
@@ -375,7 +377,7 @@ function settings_post(&$a) {
                );
        }               
 
-       if($old_visibility != $net_publish) {
+       if(($old_visibility != $net_publish) || ($page_flags != $old_page_flags)) {
                // Update global directory in background
                $url = $_SESSION['my_url'];
                if($url && strlen(get_config('system','directory_submit_url')))
index 10c980d93bfb2e814f58a51df617a96dd7f48a3e..6b66f60d770ada1925dcab938c44e6ff6f5f0183 100755 (executable)
@@ -63,7 +63,8 @@ function viewcontacts_content(&$a) {
                        'username' => $rr['name'],
                        'url' => $url,
                        'sparkle' => '',
-                       'item' => $rr,
+                       'itemurl' => $rr['url'],
+                       'network' => network_to_name($rr['network']),
                );
        }
 
index 865c6175e94853bea5e0212f96c657aa80ee9c7e..c29394b480968d4e161fb4cb8114a9f20f5261d0 100755 (executable)
@@ -1,6 +1,6 @@
 <?php
 
-define( 'UPDATE_VERSION' , 1128 );
+define( 'UPDATE_VERSION' , 1131 );
 
 /**
  *
@@ -1109,3 +1109,16 @@ function update_1127() {
   ) ENGINE = MyISAM DEFAULT CHARSET=utf8");
 }
 
+
+function update_1128() {
+       q("alter table spam add `date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' AFTER `term` ");
+}
+
+function update_1129() {
+       q("ALTER TABLE `notify` ADD `parent` INT NOT NULL AFTER `link` , ADD INDEX ( `parent` ), ADD INDEX ( `link` ), ADD INDEX ( `otype` ) ");
+}
+
+function update_1130() {
+       q("ALTER TABLE `item` ADD `file` MEDIUMTEXT NOT NULL AFTER `inform`, ADD FULLTEXT KEY (`file`) ");
+}
+
index 1da2a99091b442ebd4a4a857d421a88e49930484..a6177324aced4fc9cd19a3f2237d6b23f18c4d14 100755 (executable)
@@ -1,5 +1,11 @@
 <?php
+/**
+* @package util
+*/
 
+/* 
+* require boot.php
+*/
 require_once("boot.php");
 
 $a = new App;
diff --git a/util/docblox_errorchecker.php b/util/docblox_errorchecker.php
new file mode 100644 (file)
index 0000000..af4c764
--- /dev/null
@@ -0,0 +1,145 @@
+<?php 
+/**
+ * When I installed docblox, I had the experience that it does not generate any output at all.
+ * This script may be used to find that kind of problems with the documentation build process.
+ * If docblox generates output, use another approach for debugging.
+ *
+ * Basically, docblox takes a list of files to build documentation from. This script assumes there is a file or set of files
+ * breaking the build when it is included in that list. It tries to calculate the smallest list containing these files.
+ * Unfortunatly, the original problem is NP-complete, so what the script does is a best guess only.
+ *
+ * So it starts with a list of all files in the project.
+ * If that list can't be build, it cuts it in two parts and tries both parts independently. If only one of them breaks,
+ * it takes that one and tries the same independently. If both break, it assumes this is the smallest set. This assumption
+ * is not necessarily true. Maybe the smallest set consists of two files and both of them were in different parts when
+ * the list was divided, but by now it is my best guess. To make this assumption better, the list is shuffled after every step. 
+ *
+ * After that, the script tries to remove a file from the list. It tests if the list breaks and if so, it
+ * assumes that the file it removed belongs to the set of errorneous files. 
+ * This is done for all files, so, in the end removing one file leads to a working doc build. 
+ *
+ * @package util
+ * @author Alexander Kampmann
+ */
+
+/**
+ * This function generates a comma seperated list of file names.
+ * 
+ * @package util
+ * 
+ * @param array $fileset Set of file names
+ * 
+ * @return string comma-seperated list of the file names
+ */
+function namesList($fileset) {
+       $fsparam="";
+       foreach($fileset as $file) {
+               $fsparam=$fsparam.",".$file;
+       }
+       return $fsparam;
+};
+
+/**
+ * This functions runs phpdoc on the provided list of files
+ * @package util
+ * 
+ * @param array $fileset Set of filenames
+ * 
+ * @return bool true, if that set can be built
+ */
+function runs($fileset) {
+       $fsParam=namesList($fileset);
+       exec('docblox -t phpdoc_out -f '.$fsParam);
+       if(file_exists("phpdoc_out/index.html")) {
+               echo "\n Subset ".$fsParam." is okay. \n";
+               exec('rm -r phpdoc_out');
+               return true;
+       } else {
+               echo "\n Subset ".$fsParam." failed. \n";
+               return false;
+       }
+};
+
+/**
+ * This functions cuts down a fileset by removing files until it finally works.
+ * it was meant to be recursive, but php's maximum stack size is to small. So it just simulates recursion.
+ *
+ * In that version, it does not necessarily generate the smallest set, because it may not alter the elements order enough.
+ * 
+ * @package util
+ * 
+ * @param array $fileset set of filenames
+ * @param int $ps number of files in subsets
+ * 
+ * @return array a part of $fileset, that crashes
+ */
+function reduce($fileset, $ps) {
+       //split array...
+       $parts=array_chunk($fileset, $ps);
+       //filter working subsets...
+       $parts=array_filter($parts, "runs");
+       //melt remaining parts together
+       if(is_array($parts)) {
+               return array_reduce($parts, "array_merge", array());
+       }
+       return array();
+};
+
+//return from util folder to frindica base dir
+$dir='..';
+
+//stack for dirs to search
+$dirstack=array();
+//list of source files
+$filelist=array();
+
+//loop over all files in $dir
+while($dh=opendir($dir)) {
+       while($file=readdir($dh)) {
+               if(is_dir($dir."/".$file)) {
+                       //add to directory stack
+                       if($file!=".." && $file!=".") {
+                               array_push($dirstack, $dir."/".$file);
+                               echo "dir ".$dir."/".$file."\n";
+                       }
+               } else  {
+                       //test if it is a source file and add to filelist
+                       if(substr($file, strlen($file)-4)==".php") {
+                               array_push($filelist, $dir."/".$file);
+                               echo $dir."/".$file."\n";
+                       }
+               }
+       }
+       //look at the next dir
+       $dir=array_pop($dirstack);
+}
+
+//check the entire set
+if(runs($filelist)) {
+       echo "I can not detect a problem. \n";
+       exit;
+}
+
+//check half of the set and discard if that half is okay
+$res=$filelist;
+$i=0;
+do {
+       $i=count($res);
+       echo $i."/".count($fileset)." elements remaining. \n";
+       $res=reduce($res, count($res)/2);
+       shuffle($res);
+} while(count($res)<$i);
+
+//check one file after another
+$needed=array();
+
+while(count($res)!=0) {
+       $file=array_pop($res);
+
+       if(runs(array_merge($res, $needed))) {
+               echo "needs: ".$file." and file count ".count($needed);
+               array_push($needed, $file);
+       }
+}
+
+echo "\nSmallest Set is: ".namesList($needed)." with ".count($needed)." files. ";
index f4c0670bfefcf505fd5cf203ed6dea1fcd00e522..b826acc65d5c607acb7a60b752988a4ced8f5706 100755 (executable)
@@ -17,6 +17,7 @@
                        
        </div>
        <div class="contact-name" id="contact-entry-name-$contact.id" >$contact.name</div>
+       {{ if $contact.alt_text }}<div class="contact-details" id="contact-entry-rel-$contact.id" >$contact.alt_text</div>{{ endif }}
        <div class="contact-details" id="contact-entry-url-$contact.id" >$contact.itemurl</div>
        <div class="contact-details" id="contact-entry-network-$contact.id" >$contact.network</div>
 
index 7d4e7d2621e04227abaf0b42a0c9ccced9d50473..ff202bbe44077569c23de4c00710d2a42265b607 100755 (executable)
@@ -1,6 +1,18 @@
 {{ for $threads as $thread }}
 <div id="tread-wrapper-$thread.id" class="tread-wrapper">
-       $thread.html
+       {{ 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 }}
 
index 51782ab9521dd5c314dfcada5fabc77f27c92019..3689db75353dd51c93bb5d42e08190f804fddf58 100755 (executable)
@@ -2,17 +2,21 @@
 
 
 <div id="group-edit-wrapper" >
-<form action="group/$gid" id="group-edit-form" method="post" >
-<div id="group-edit-name-wrapper" >
-<label id="group-edit-name-label" for="group-edit-name" >$gname</label>
-<input type="text" id="group-edit-name" name="groupname" value="$name" />
-</div>
-<div id="group-edit-name-end"></div>
-$drop
-<div id="group-edit-submit-wrapper" >
-<input type="submit" name="submit" value="$submit" >
-</div>
-<div id="group-edit-desc">$desc</div>
-<div id="group-edit-select-end" ></div>
-</form>
+       <form action="group/$gid" id="group-edit-form" method="post" >
+               
+               {{ inc field_input.tpl with $field=$gname }}{{ endinc }}
+               {{ if $drop }}$drop{{ endif }}
+               <div id="group-edit-submit-wrapper" >
+                       <input type="submit" name="submit" value="$submit" >
+               </div>
+               <div id="group-edit-select-end" ></div>
+       </form>
 </div>
+
+
+{{ if $groupeditor }}
+       <div id="group-update-wrapper">
+               {{ inc groupeditor.tpl }}{{ endinc }}
+       </div>
+{{ endif }}
+{{ if $desc }}<div id="group-edit-desc">$desc</div>{{ endif }}
diff --git a/view/group_new.tpl b/view/group_new.tpl
deleted file mode 100755 (executable)
index 735b516..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-<div id="group-new-wrapper" >
-<form action="group/new" method="post">
-
-<div id="group-new-text">
-<p>
-$desc
-
-<div id="group-new-input-wrapper">
-<label id="group-new-label" for="group-new-name" >$name</label>
-<input name="groupname" id="group-new-name" />
-</div>
-<div id="group-new-input-end" ></div>
-
-<div id="group-new-submit-wrapper" >
-<input type="submit" name="submit" value="$submit" />
-</form>
-</div>
-<div id="group-new-end"></div>
-
\ No newline at end of file
diff --git a/view/groupeditor.tpl b/view/groupeditor.tpl
new file mode 100644 (file)
index 0000000..755985e
--- /dev/null
@@ -0,0 +1,16 @@
+<div id="group">
+<h3>$groupeditor.label_members</h3>
+<div id="group-members" class="contact_list">
+{{ for $groupeditor.members as $c}} $c {{ endfor }}
+</div>
+<div id="group-members-end"></div>
+<hr id="group-separator" />
+</div>
+
+<div id="contacts">
+<h3>$groupeditor.label_contacts</h3>
+<div id="group-all-contacts" class="contact_list">
+{{ for $groupeditor.contacts as $m}} $m {{ endfor }}
+</div>
+<div id="group-all-contacts-end"></div>
+</div>
index de8bd239617ee9826f8cadc060bc8de9a683657d..a889062e0634575c3382257a19e248cd89cf44c8 100755 (executable)
@@ -1,75 +1,75 @@
 
 <div class="wall-item-decor">
-       <span class="icon s22 star $isstarred" id="starred-$id" title="$star.starred">$star.starred</span>
-       {{ if $lock }}<span class="icon s22 lock fakelink" onclick="lockview(event,$id);" title="$lock">$lock</span>{{ endif }} 
-       <img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
+       <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 $indent">
+<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$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" 
-                               onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)">
-                               <a href="$profile_url" target="redir" title="$linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$id">
-                                       <img src="$thumb" class="contact-photo$sparkle" id="wall-item-photo-$id" alt="$name" />
+                               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="contact-photo$item.sparkle" id="wall-item-photo-$item.id" alt="$item.name" />
                                </a>
-                               <a href="#" rel="#wall-item-photo-menu-$id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$id">menu</a>
-                               <ul class="wall-item-menu menu-popup" id="wall-item-photo-menu-$id">
-                               $item_photo_menu
+                               <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="wall-item-menu menu-popup" id="wall-item-photo-menu-$item.id">
+                               $item.item_photo_menu
                                </ul>
                                
                        </div>
-                       <div class="wall-item-location">$location</div> 
+                       <div class="wall-item-location">$item.location</div>    
                </div>
                <div class="wall-item-content">
-                       {{ if $title }}<h2><a href="$plink.href">$title</a></h2>{{ endif }}
-                       $body
+                       {{ 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 $tags as $tag }}
-                               <span class='tag'>$tag</span>
+                       {{ for $item.tags as $item.tag }}
+                               <span class='tag'>$item.tag</span>
                        {{ endfor }}
                </div>
        </div>
        <div class="wall-item-bottom">
                <div class="">
-                       {{ if $plink }}<a class="icon s16 link" title="$plink.title" href="$plink.href">$plink.title</a>{{ endif }}
+                       {{ if $item.plink }}<a class="icon s16 link" 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="$profile_url" target="redir" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle">$name</span></a> <span class="wall-item-ago">$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">$item.ago</span>
                        </div>
                        
                        <div class="wall-item-actions-social">
-                       {{ if $star }}
-                               <a href="#" id="star-$id" onclick="dostar($id); return false;"  class="$star.classdo"  title="$star.do">$star.do</a>
-                               <a href="#" id="unstar-$id" onclick="dostar($id); return false;"  class="$star.classundo"  title="$star.undo">$star.undo</a>
-                               <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="$star.classtagger" title="$star.tagger">$star.tagger</a>
+                       {{ 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 $vote }}
-                               <a href="#" id="like-$id" title="$vote.like.0" onclick="dolike($id,'like'); return false">$vote.like.1</a>
-                               <a href="#" id="dislike-$id" title="$vote.dislike.0" onclick="dolike($id,'dislike'); return false">$vote.dislike.1</a>
+                       {{ 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 $vote.share }}
-                               <a href="#" id="share-$id" title="$vote.share.0" onclick="jotShare($id); return false">$vote.share.1</a>
+                       {{ 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 $drop.dropping }}
-                                       <input type="checkbox" title="$drop.select" name="itemselected[]" class="item-select" value="$id" />
-                                       <a href="item/drop/$id" onclick="return confirmDelete();" class="icon delete s16" title="$drop.delete">$drop.delete</a>
+                               {{ 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 $edpost }}
-                                       <a class="icon edit s16" href="$edpost.0" title="$edpost.1"></a>
+                               {{ if $item.edpost }}
+                                       <a class="icon edit s16" href="$item.edpost.0" title="$item.edpost.1"></a>
                                {{ endif }}
                        </div>
                        
        </div>
        <div class="wall-item-bottom">
                <div class="wall-item-links"></div>
-               <div class="wall-item-like" id="wall-item-like-$id">$like</div>
-               <div class="wall-item-dislike" id="wall-item-dislike-$id">$dislike</div>
-               {{ if $conv }}
-               <div class="wall-item-conv" id="wall-item-conv-$id" >
-                       <a href='$conv.href' id='context-$id' title='$conv.title'>$conv.title</a>
+               <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>
+               {{ if $item.conv }}
+               <div class="wall-item-conv" id="wall-item-conv-$item.id" >
+                       <a href='$item.conv.href' id='context-$item.id' title='$item.conv.title'>$item.conv.title</a>
                {{ endif }}
                </div>
        </div>
diff --git a/view/theme/diabook b/view/theme/diabook
new file mode 160000 (submodule)
index 0000000..e29c43c
--- /dev/null
@@ -0,0 +1 @@
+Subproject commit e29c43c4e78e42f448cbd84dc51a3a346bdab01f
index 3d841ab0809cb35378418663811e6fa13ed326af..54c3e389c05dcc954c4700890b64b3e7dd26d054 100755 (executable)
@@ -1,40 +1,40 @@
-<div class="wall-item-outside-wrapper$indent" id="wall-item-outside-wrapper-$id" >
-       <div class="wall-item-content-wrapper$indent" id="wall-item-content-wrapper-$id" >
-               <div class="wall-item-info" id="wall-item-info-$id">
-                       <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$id" 
-                                onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" 
-                                onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)">
-                               <a href="$profile_url" title="$linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$id">
-                               <img src="$thumb" class="wall-item-photo$sparkle" id="wall-item-photo-$id" style="height: 80px; width: 80px;" alt="$name" /></a>
-                               <span onclick="openClose('wall-item-photo-menu-$id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$id">menu</span>
-                               <div class="wall-item-photo-menu" id="wall-item-photo-menu-$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" 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" 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_photo_menu
+                                               $item.item_photo_menu
                                        </ul>
                                </div>
                        </div>
                        <div class="wall-item-photo-end"></div> 
-                       <div class="wall-item-location" id="wall-item-location-$id">{{ if $location }}<span class="icon globe"></span>$location {{ endif }}</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>
                <div class="wall-item-lock-wrapper">
-                       {{ if $lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$lock" onclick="lockview(event,$id);" /></div>
+                       {{ 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>
-               <div class="wall-item-tools" id="wall-item-tools-$id">
-                       <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$id" >
-                               {{ if $drop.dropping }}<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drophide" title="$drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
+               <div class="wall-item-tools" id="wall-item-tools-$item.id">
+                       <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 $drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$drop.select" class="item-select" name="itemselected[]" value="$id" />{{ endif }}
+                               {{ 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 class="wall-item-content" id="wall-item-content-$id" >
-                       <div class="wall-item-title" id="wall-item-title-$id">$title</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-$id" >$body</div>
+                       <div class="wall-item-body" id="wall-item-body-$item.id" >$item.body</div>
                </div>
                <div class="wall-item-author">
-                               <a href="$profile_url" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle" id="wall-item-name-$id" >$name</span></a>
-                               <div class="wall-item-ago"  id="wall-item-ago-$id">$ago</div>
+                               <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 class="wall-item-ago"  id="wall-item-ago-$item.id">$item.ago</div>
                                
                </div>                  
                
        <div class="wall-item-wrapper-end"></div>
 </div>
 
-<div class="wall-item-outside-wrapper-end$indent" ></div>
-       <div class="wall-item-conv" id="wall-item-conv-$id" >
-       {{ if $conv }}
-               <a href='$conv.href' id='context-$id' title='$conv.title'>$conv.title</a>
+<div class="wall-item-outside-wrapper-end$item.indent" ></div>
+       <div class="wall-item-conv" id="wall-item-conv-$item.id" >
+       {{ if $item.conv }}
+               <a href='$item.conv.href' id='context-$item.id' title='$item.conv.title'>$item.conv.title</a>
        {{ endif }}
        </div>
 
index 882843a0934192f9b0b63788118cb2ab1e3cfcfd..0dcd30f7b4e63a24f0ce42c0779e533cf16b0953 100755 (executable)
@@ -1,77 +1,77 @@
-<div class="wall-item-outside-wrapper$indent" id="wall-item-outside-wrapper-$id" >
-       <div class="wall-item-content-wrapper$indent" id="wall-item-content-wrapper-$id" >
-               <div class="wall-item-info" id="wall-item-info-$id">
-                       <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$id" 
-                                onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" 
-                                onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)">
-                               <a href="$profile_url" title="$linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$id">
-                                       <img src="$thumb" class="wall-item-photo$sparkle" id="wall-item-photo-$id" style="height: 80px; width: 80px;" alt="$name" />
+<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" 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" 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-$id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$id">menu</span>
-                               <div class="wall-item-photo-menu" id="wall-item-photo-menu-$id">
+                               <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_photo_menu
+                                               $item.item_photo_menu
                                        </ul>
                                </div>
                        </div>
                        <div class="wall-item-photo-end"></div>
-                       <div class="wall-item-location" id="wall-item-location-$id">{{ if $location }}<span class="icon globe"></span>$location {{ endif }}</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>
                <div class="wall-item-lock-wrapper">
-                       {{ if $lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$lock" onclick="lockview(event,$id);" /></div>
+                       {{ 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>
-               <div class="wall-item-tools" id="wall-item-tools-$id">
-                       {{ if $star }}
-                               <a href="#" id="starred-$id" onclick="dostar($id); return false;" class="star-item icon $isstarred" title="$star.toggle"></a>
-                               <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="tag-item icon tagged" title="$star.tagger"></a>
+               <div class="wall-item-tools" id="wall-item-tools-$item.id">
+                       {{ 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 $vote }}
-                       <div class="wall-item-like-buttons" id="wall-item-like-buttons-$id">
-                               <a href="#" class="icon like" title="$vote.like.0" onclick="dolike($id,'like'); return false"></a>
-                               <a href="#" class="icon dislike" title="$vote.dislike.0" onclick="dolike($id,'dislike'); return false"></a>
-                               {{ if $vote.share }}<a href="#" class="icon recycle wall-item-share-buttons" title="$vote.share.0" onclick="jotShare($id); return false"></a>{{ endif }}
-                               <img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
+                       {{ 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 $plink }}
-                               <div class="wall-item-links-wrapper"><a href="$plink.href" title="$plink.title" target="external-link" class="icon remote-link"></a></div>
+                       {{ 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"></a></div>
                        {{ endif }}
-                       {{ if $edpost }}
-                               <a class="editpost icon pencil" href="$edpost.0" title="$edpost.1"></a>'
+                       {{ if $item.edpost }}
+                               <a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>'
                        {{ endif }}
                
-                       <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$id" >
-                               {{ if $drop.dropping }}<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drophide" title="$drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></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 $drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$drop.select" class="item-select" name="itemselected[]" value="$id" />{{ endif }}
+                               {{ 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 class="wall-item-content" id="wall-item-content-$id" >
-                       <div class="wall-item-title" id="wall-item-title-$id">$title</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-$id" >$body
+                       <div class="wall-item-body" id="wall-item-body-$item.id" >$item.body
                                        <div class="body-tag">
-                                               {{ for $tags as $tag }}
-                                                       <span class='tag'>$tag</span>
+                                               {{ for $item.tags as $item.tag }}
+                                                       <span class='tag'>$item.tag</span>
                                                {{ endfor }}
                                        </div>
                        </div>
                </div>
                <div class="wall-item-author">
-                               <a href="$profile_url" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle" id="wall-item-name-$id" >$name</span></a>
-                               <div class="wall-item-ago"  id="wall-item-ago-$id">$ago</div>
+                               <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 class="wall-item-ago"  id="wall-item-ago-$item.id">$item.ago</div>
                                
                </div>  
        </div>
        <div class="wall-item-wrapper-end"></div>
-       <div class="wall-item-like" id="wall-item-like-$id">$like</div>
-       <div class="wall-item-dislike" id="wall-item-dislike-$id">$dislike</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 class="wall-item-comment-wrapper" >
-       $comment
+       $item.comment
        </div>
 </div>
 
-<div class="wall-item-outside-wrapper-end$indent" ></div>
+<div class="wall-item-outside-wrapper-end$item.indent" ></div>
 
index 57c6600b7d0a11249ac6f81bddf30730dd08cc39..31f046a76f75381c7b119c5b506b5187480c9949 100755 (executable)
@@ -1,81 +1,81 @@
-<div class="wall-item-outside-wrapper$indent wallwall" id="wall-item-outside-wrapper-$id" >
-       <div class="wall-item-content-wrapper$indent" id="wall-item-content-wrapper-$id" >
-               <div class="wall-item-info wallwall" id="wall-item-info-$id">
-                       <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$id" >
-                               <a href="$owner_url" title="$olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$id">
-                               <img src="$owner_photo" class="wall-item-photo$osparkle" id="wall-item-ownerphoto-$id" style="height: 80px; width: 80px;" alt="$owner_name" /></a>
+<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 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">
+                               <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="$wall" /></div>
-                       <div class="wall-item-photo-wrapper wwfrom" id="wall-item-photo-wrapper-$id" 
-                               onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')"
-                onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)">
-                               <a href="$profile_url" title="$linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$id">
-                               <img src="$thumb" class="wall-item-photo$sparkle" id="wall-item-photo-$id" style="height: 80px; width: 80px;" alt="$name" /></a>
-                               <span onclick="openClose('wall-item-photo-menu-$id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$id">menu</span>
-                <div class="wall-item-photo-menu" id="wall-item-photo-menu-$id">
+                       <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" 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_photo_menu
+                        $item.item_photo_menu
                     </ul>
                 </div>
 
                        </div>
                        <div class="wall-item-photo-end"></div>
-                       <div class="wall-item-location" id="wall-item-location-$id">{{ if $location }}<span class="icon globe"></span>$location {{ endif }}</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>
                <div class="wall-item-lock-wrapper">
-                               {{ if $lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$lock" onclick="lockview(event,$id);" /></div>
+                               {{ 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>
-               <div class="wall-item-tools" id="wall-item-tools-$id">
-                       {{ if $star }}
-                               <a href="#" id="starred-$id" onclick="dostar($id); return false;" class="star-item icon $isstarred" title="$star.toggle"></a>
-                               <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="tag-item icon tagged" title="$star.tagger"></a>
+               <div class="wall-item-tools" id="wall-item-tools-$item.id">
+                       {{ 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 $vote }}
-                       <div class="wall-item-like-buttons" id="wall-item-like-buttons-$id">
-                               <a href="#" class="icon like" title="$vote.like.0" onclick="dolike($id,'like'); return false"></a>
-                               <a href="#" class="icon dislike" title="$vote.dislike.0" onclick="dolike($id,'dislike'); return false"></a>
-                               {{ if $vote.share }}<a href="#" class="icon recycle wall-item-share-buttons" title="$vote.share.0" onclick="jotShare($id); return false"></a>{{ endif }}
-                               <img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
+                       {{ 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 $plink }}
-                               <div class="wall-item-links-wrapper"><a href="$plink.href" title="$plink.title" target="external-link" class="icon remote-link"></a></div>
+                       {{ 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"></a></div>
                        {{ endif }}
-                       {{ if $edpost }}
-                               <a class="editpost icon pencil" href="$edpost.0" title="$edpost.1"></a>'
+                       {{ if $item.edpost }}
+                               <a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>'
                        {{ endif }}
                
-                       <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$id" >
-                               {{ if $drop.dropping }}<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drophide" title="$drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></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 $drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$drop.select" class="item-select" name="itemselected[]" value="$id" />{{ endif }}
+                               {{ 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 class="wall-item-content" id="wall-item-content-$id" >
-                       <div class="wall-item-title" id="wall-item-title-$id">$title</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-$id" >$body
+                       <div class="wall-item-body" id="wall-item-body-$item.id" >$item.body
                                        <div class="body-tag">
-                                               {{ for $tags as $tag }}
-                                                       <span class='tag'>$tag</span>
+                                               {{ for $item.tags as $item.tag }}
+                                                       <span class='tag'>$item.tag</span>
                                                {{ endfor }}
                                        </div>                  
                        </div>
                </div>
                <div class="wall-item-author">
-                       <a href="$profile_url" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle" id="wall-item-name-$id" >$name</span></a>
-                       <div class="wall-item-ago"  id="wall-item-ago-$id">$ago</div>
+                       <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 class="wall-item-ago"  id="wall-item-ago-$item.id">$item.ago</div>
                </div>  
        </div>  
        <div class="wall-item-wrapper-end"></div>
-       <div class="wall-item-like" id="wall-item-like-$id">$like</div>
-       <div class="wall-item-dislike" id="wall-item-dislike-$id">$dislike</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 class="wall-item-comment-wrapper" >
-       $comment
+       $item.comment
        </div>
 </div>
 
-<div class="wall-item-outside-wrapper-end$indent" ></div>
+<div class="wall-item-outside-wrapper-end$item.indent" ></div>
 
index 33cedfb1ec932de47ad54dd136cb996635a757d2..43bb1dd47006d8a3b4ae944969f55b8d94df3f9c 100755 (executable)
@@ -1,6 +1,18 @@
 {{ for $threads as $thread }}
 <div id="tread-wrapper-$thread.id" class="tread-wrapper">
-       $thread.html
+       {{ 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 }}
 
index f046e41ecf2881095a81dbb78e474661798f1f45..bfad1b7b72e8871b48b172728444ca7b3d6d079f 100755 (executable)
@@ -1,53 +1,53 @@
-<div class="wall-item-outside-wrapper$indent$previewing" id="wall-item-outside-wrapper-$id" >
-       <div class="wall-item-content-wrapper$indent" id="wall-item-content-wrapper-$id" >
-               <div class="wall-item-info" id="wall-item-info-$id">
-                       <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$id" 
-                                onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" 
-                                onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)">
-                               <a href="$profile_url" target="redir" title="$linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$id">
-                               <img src="$thumb" class="wall-item-photo$sparkle" id="wall-item-photo-$id" style="height: 80px; width: 80px;" alt="$name" /></a>
-                               <span onclick="openClose('wall-item-photo-menu-$id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$id">menu</span>
-                               <div class="wall-item-photo-menu" id="wall-item-photo-menu-$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" 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_photo_menu
+                                               $item.item_photo_menu
                                        </ul>
                                </div>
                        </div>
                        <div class="wall-item-photo-end"></div> 
-                       <div class="wall-item-wrapper" id="wall-item-wrapper-$id" >
-                               {{ if $lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$lock" onclick="lockview(event,$id);" /></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-$id">$location</div>
+                               <div class="wall-item-location" id="wall-item-location-$item.id">$item.location</div>
                        </div>
                </div>
                <div class="wall-item-author">
-                               <a href="$profile_url" target="redir" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle" id="wall-item-name-$id" >$name</span></a>
-                               <div class="wall-item-ago"  id="wall-item-ago-$id">$ago</div>
+                               <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>                  
-               <div class="wall-item-content" id="wall-item-content-$id" >
-                       <div class="wall-item-title" id="wall-item-title-$id">$title</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-$id" >$body</div>
+                       <div class="wall-item-body" id="wall-item-body-$item.id" >$item.body</div>
                </div>
-               <div class="wall-item-tools" id="wall-item-tools-$id">
-                       <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$id" >
-                               {{ if $drop.dropping }}<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drophide" title="$drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
+               <div class="wall-item-tools" id="wall-item-tools-$item.id">
+                       <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 $drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$drop.select" class="item-select" name="itemselected[]" value="$id" />{{ endif }}
+                               {{ 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-conv" id="wall-item-conv-$id" >
-       {{ if $conv }}
-                       <a href='$conv.href' id='context-$id' title='$conv.title'>$conv.title</a>
+       <div class="wall-item-conv" id="wall-item-conv-$item.id" >
+       {{ if $item.conv }}
+                       <a href='$item.conv.href' id='context-$item.id' title='$item.conv.title'>$item.conv.title</a>
        {{ endif }}
        </div>
 
-<div class="wall-item-outside-wrapper-end$indent" ></div>
+<div class="wall-item-outside-wrapper-end$item.indent" ></div>
 
 </div>
 
index a5136eed3a6421f9bdde983582fb9a24f620856b..d165d98016e1cbd3a8f4ef75ac96281ca8b7d5b7 100755 (executable)
@@ -1,76 +1,76 @@
-<div class="wall-item-outside-wrapper$indent$previewing" id="wall-item-outside-wrapper-$id" >
-       <div class="wall-item-content-wrapper$indent" id="wall-item-content-wrapper-$id" >
-               <div class="wall-item-info" id="wall-item-info-$id">
-                       <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$id" 
-                                onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" 
-                                onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)">
-                               <a href="$profile_url" target="redir" title="$linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$id">
-                                       <img src="$thumb" class="wall-item-photo$sparkle" id="wall-item-photo-$id" style="height: 80px; width: 80px;" alt="$name" />
+<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-$id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$id">menu</span>
-                               <div class="wall-item-photo-menu" id="wall-item-photo-menu-$id">
+                               <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_photo_menu
+                                               $item.item_photo_menu
                                        </ul>
                                </div>
                        </div>
                        <div class="wall-item-photo-end"></div>
-                       <div class="wall-item-wrapper" id="wall-item-wrapper-$id" >
-                               {{ if $lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$lock" onclick="lockview(event,$id);" /></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-$id">$location</div>                             
+                               <div class="wall-item-location" id="wall-item-location-$item.id">$item.location</div>                           
                        </div>
                </div>
                <div class="wall-item-author">
-                               <a href="$profile_url" target="redir" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle" id="wall-item-name-$id" >$name</span></a>
-                               <div class="wall-item-ago"  id="wall-item-ago-$id">$ago</div>
+                               <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>  
-               <div class="wall-item-content" id="wall-item-content-$id" >
-                       <div class="wall-item-title" id="wall-item-title-$id">$title</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-$id" >$body
+                       <div class="wall-item-body" id="wall-item-body-$item.id" >$item.body
                                        <div class="body-tag">
-                                               {{ for $tags as $tag }}
-                                                       <span class='tag'>$tag</span>
+                                               {{ for $item.tags as $item.tag }}
+                                                       <span class='tag'>$item.tag</span>
                                                {{ endfor }}
                                        </div>
                        </div>
                </div>
-               <div class="wall-item-tools" id="wall-item-tools-$id">
-                       {{ if $vote }}
-                       <div class="wall-item-like-buttons" id="wall-item-like-buttons-$id">
-                               <a href="#" class="icon like" title="$vote.like.0" onclick="dolike($id,'like'); return false"></a>
-                               <a href="#" class="icon dislike" title="$vote.dislike.0" onclick="dolike($id,'dislike'); return false"></a>
-                               {{ if $vote.share }}<a href="#" class="icon recycle wall-item-share-buttons" title="$vote.share.0" onclick="jotShare($id); return false"></a>{{ endif }}
-                               <img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
+               <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 $plink }}
-                               <div class="wall-item-links-wrapper"><a href="$plink.href" title="$plink.title" target="external-link" class="icon remote-link"></a></div>
+                       {{ 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"></a></div>
                        {{ endif }}
-                       {{ if $edpost }}
-                               <a class="editpost icon pencil" href="$edpost.0" title="$edpost.1"></a>
+                       {{ if $item.edpost }}
+                               <a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
                        {{ endif }}
                         
-                       {{ if $star }}
-                       <a href="#" id="starred-$id" onclick="dostar($id); return false;" class="star-item icon $isstarred" title="$star.toggle"></a>
-                       <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="tag-item icon tagged" title="$star.tagger"></a>
+                       {{ 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 }}
                        
-                       <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$id" >
-                               {{ if $drop.dropping }}<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drophide" title="$drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></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 $drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$drop.select" class="item-select" name="itemselected[]" value="$id" />{{ endif }}
+                               {{ 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" id="wall-item-like-$id">$like</div>
-       <div class="wall-item-dislike" id="wall-item-dislike-$id">$dislike</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 class="wall-item-comment-wrapper" >
-       $comment
+       $item.comment
        </div>
 
-<div class="wall-item-outside-wrapper-end$indent" ></div>
+<div class="wall-item-outside-wrapper-end$item.indent" ></div>
 </div>
index 4675f1e00cec543148f75a08810ce4037eb41958..75cd5f65e7690c7fc72e6a00a0c61a4072dfd188 100755 (executable)
@@ -1,82 +1,82 @@
-<div class="wall-item-outside-wrapper$indent$previewing wallwall" id="wall-item-outside-wrapper-$id" >
-       <div class="wall-item-content-wrapper$indent" id="wall-item-content-wrapper-$id" >
-               <div class="wall-item-info wallwall" id="wall-item-info-$id">
-                       <div class="wall-item-photo-wrapper wwto" id="wall-item-ownerphoto-wrapper-$id" >
-                               <a href="$owner_url" target="redir" title="$olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$id">
-                               <img src="$owner_photo" class="wall-item-photo$osparkle" id="wall-item-ownerphoto-$id" style="height: 80px; width: 80px;" alt="$owner_name" /></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="$wall" /></div>
-                       <div class="wall-item-photo-wrapper wwfrom" id="wall-item-photo-wrapper-$id" 
-                               onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')"
-                onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)">
-                               <a href="$profile_url" target="redir" title="$linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$id">
-                               <img src="$thumb" class="wall-item-photo$sparkle" id="wall-item-photo-$id" style="height: 80px; width: 80px;" alt="$name" /></a>
-                               <span onclick="openClose('wall-item-photo-menu-$id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$id">menu</span>
-                <div class="wall-item-photo-menu" id="wall-item-photo-menu-$id">
+                       <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_photo_menu
+                        $item.item_photo_menu
                     </ul>
                 </div>
 
                        </div>
                        <div class="wall-item-photo-end"></div>
-                       <div class="wall-item-wrapper" id="wall-item-wrapper-$id" >
-                               {{ if $lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$lock" onclick="lockview(event,$id);" /></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-$id">$location</div>
+                               <div class="wall-item-location" id="wall-item-location-$item.id">$item.location</div>
                        </div>
                </div>
                <div class="wall-item-author">
-                               <a href="$profile_url" target="redir" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle" id="wall-item-name-$id" >$name</span></a> $to <a href="$owner_url" target="redir" title="$olinktitle" class="wall-item-name-link"><span class="wall-item-name$osparkle" id="wall-item-ownername-$id">$owner_name</span></a> $vwall<br />
-                               <div class="wall-item-ago"  id="wall-item-ago-$id">$ago</div>                           
+                               <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-$id" >
-                       <div class="wall-item-title" id="wall-item-title-$id">$title</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-$id" >$body
+                       <div class="wall-item-body" id="wall-item-body-$item.id" >$item.body
                                        <div class="body-tag">
-                                               {{ for $tags as $tag }}
-                                                       <span class='tag'>$tag</span>
+                                               {{ for $item.tags as $item.tag }}
+                                                       <span class='tag'>$item.tag</span>
                                                {{ endfor }}
                                        </div>
                        </div>
                </div>
-               <div class="wall-item-tools" id="wall-item-tools-$id">
-                       {{ if $vote }}
-                       <div class="wall-item-like-buttons" id="wall-item-like-buttons-$id">
-                               <a href="#" class="icon like" title="$vote.like.0" onclick="dolike($id,'like'); return false"></a>
-                               <a href="#" class="icon dislike" title="$vote.dislike.0" onclick="dolike($id,'dislike'); return false"></a>
-                               {{ if $vote.share }}<a href="#" class="icon recycle wall-item-share-buttons" title="$vote.share.0" onclick="jotShare($id); return false"></a>{{ endif }}
-                               <img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
+               <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 $plink }}
-                               <div class="wall-item-links-wrapper"><a href="$plink.href" title="$plink.title" target="external-link" class="icon remote-link"></a></div>
+                       {{ 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"></a></div>
                        {{ endif }}
-                       {{ if $edpost }}
-                               <a class="editpost icon pencil" href="$edpost.0" title="$edpost.1"></a>
+                       {{ if $item.edpost }}
+                               <a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
                        {{ endif }}
                         
-                       {{ if $star }}
-                       <a href="#" id="starred-$id" onclick="dostar($id); return false;" class="star-item icon $isstarred" title="$star.toggle"></a>
-                       <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="tag-item icon tagged" title="$star.tagger"></a>
+                       {{ 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 }}
                        
-                       <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$id" >
-                               {{ if $drop.dropping }}<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drophide" title="$drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></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 $drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$drop.select" class="item-select" name="itemselected[]" value="$id" />{{ endif }}
+                               {{ 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" id="wall-item-like-$id">$like</div>
-       <div class="wall-item-dislike" id="wall-item-dislike-$id">$dislike</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 class="wall-item-comment-separator"></div>
        <div class="wall-item-comment-wrapper" >
-       $comment
+       $item.comment
        </div>
 
-<div class="wall-item-outside-wrapper-end$indent" ></div>
+<div class="wall-item-outside-wrapper-end$item.indent" ></div>
 </div>
 
index 18d0fc620d45b3c582d46688a0c26648ded3e357..9183b2e77778c4276810838b174e94a1b6c4f181 100755 (executable)
@@ -71,6 +71,8 @@
 @NoticeColor: @Grey1;
 @NoticeBackgroundColor: #511919;
 
+@FieldHelpColor: @Grey3;
+
 @ThreadBackgroundColor: #f6f7f8;
 @ShinyBorderColor: @Yellow1;
 
index 9d26082616a6730efbc16b41d47e999ebda023e8..27c48f195223f3e83b298c223a44da11a1a762c3 100755 (executable)
@@ -890,6 +890,31 @@ ul.tabs {
 }
 
 
+/** group editor **/
+#group-edit-desc { margin-top: 1em; color: @FieldHelpColor; }
+#group-update-wrapper{
+       height: auto; overflow: auto;
+       #group {
+               width:300px; 
+               float:left;
+               margin-right:20px;
+       }
+       #contacts {
+               width:300px;
+               float:left;
+       }
+       #group-separator { display: none; }
+       .contact_list {
+               height: 300px;
+               border: 1px solid @MenuBorder;
+               overflow: auto;
+               .contact-block-div  {
+                       width: 50px; height: 50px;
+                       float: left;
+               }
+       }
+}
+
 /**
  * Form fields
  */
@@ -913,7 +938,7 @@ ul.tabs {
        .field_help {
                display: block;
                margin-left: 200px;
-               color: #666666;
+               color: @FieldHelpColor;
                
        }
 
index b728023c9f66f86f8355b93a4203f47aa0449e17..6087e4cd17b1ad88dcad659a091b0dcd20f52484 100755 (executable)
@@ -1304,6 +1304,37 @@ ul.tabs li {
 ul.tabs li .active {
   border-bottom: 1px solid #005c94;
 }
+/** group editor **/
+#group-edit-desc {
+  margin-top: 1em;
+  color: #999999;
+}
+#group-update-wrapper {
+  height: auto;
+  overflow: auto;
+}
+#group-update-wrapper #group {
+  width: 300px;
+  float: left;
+  margin-right: 20px;
+}
+#group-update-wrapper #contacts {
+  width: 300px;
+  float: left;
+}
+#group-update-wrapper #group-separator {
+  display: none;
+}
+#group-update-wrapper .contact_list {
+  height: 300px;
+  border: 1px solid #364e59;
+  overflow: auto;
+}
+#group-update-wrapper .contact_list .contact-block-div {
+  width: 50px;
+  height: 50px;
+  float: left;
+}
 /**
  * Form fields
  */
@@ -1326,7 +1357,7 @@ ul.tabs li .active {
 .field .field_help {
   display: block;
   margin-left: 200px;
-  color: #666666;
+  color: #999999;
 }
 .field .onoff {
   float: left;
index 372e0d0340b82b023ace1bdde91223f77c4d53fe..f2a3a3c8bbac1a5028450c468d23c67d42d346be 100755 (executable)
@@ -1,80 +1,80 @@
 
 <div class="wall-item-decor">
-       <span class="icon star $isstarred" id="starred-$id" title="$star.starred">$star.starred</span>
-       {{ if $lock }}<span class="icon lock fakelink" onclick="lockview(event,$id);" title="$lock">$lock</span>{{ endif }}     
-       <img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
+       <span class="icon star $item.isstarred" id="starred-$item.id" title="$item.star.starred">$item.star.starred</span>
+       {{ if $item.lock }}<span class="icon 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 $indent">
+<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$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" 
-                               onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)">
-                               <a href="$profile_url" target="redir" title="$linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$id">
-                                       <img src="$thumb" class="contact-photo$sparkle" id="wall-item-photo-$id" alt="$name" />
+                               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="contact-photo$item.sparkle" id="wall-item-photo-$item.id" alt="$item.name" />
                                </a>
-                               <a href="#" rel="#wall-item-photo-menu-$id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$id">menu</a>
-                               <ul class="wall-item-menu menu-popup" id="wall-item-photo-menu-$id">
-                               $item_photo_menu
+                               <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="wall-item-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="$profile_url" target="redir" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle">$name</span></a> 
+                       <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">- &nbsp;
-                               {{ if $plink }}<a class="link" title="$plink.title" href="$plink.href" style="color: #999">$ago</a>{{ else }} $ago {{ endif }}
-                               {{ if $lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$id);">$lock</span> {{ endif }}
+                               {{ if $item.plink }}<a class="link" 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 $title }}<h2><a href="$plink.href">$title</a></h2>{{ endif }}
-                       $body
+                       {{ 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 $tags as $tag }}
-                               <span class='tag'>$tag</span>
+                       {{ for $item.tags as $item.tag }}
+                               <span class='tag'>$item.tag</span>
                        {{ endfor }}
                </div>
        </div>
        <div class="wall-item-bottom">
                <div class="">
-                       {{ if $plink }}<a class="icon s16 link" title="$plink.title" href="$plink.href">$plink.title</a>{{ endif }}
+                       {{ if $item.plink }}<a class="icon s16 link" title="$item.plink.title" href="$item.plink.href">$item.plink.title</a>{{ endif }}
                </div>
                <div class="wall-item-actions">
 
-                       <div class="wall-item-location">$location&nbsp;</div>   
+                       <div class="wall-item-location">$item.location&nbsp;</div>      
                        
                        <div class="wall-item-actions-social">
-                       {{ if $star }}
-                               <a href="#" id="star-$id" onclick="dostar($id); return false;"  class="$star.classdo"  title="$star.do">$star.do</a>
-                               <a href="#" id="unstar-$id" onclick="dostar($id); return false;"  class="$star.classundo"  title="$star.undo">$star.undo</a>
-                               <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="$star.classtagger" title="$star.tagger">$star.tagger</a>
+                       {{ 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 $vote }}
-                               <a href="#" id="like-$id" title="$vote.like.0" onclick="dolike($id,'like'); return false">$vote.like.1</a>
-                               <a href="#" id="dislike-$id" title="$vote.dislike.0" onclick="dolike($id,'dislike'); return false">$vote.dislike.1</a>
+                       {{ 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 $vote.share }}
-                               <a href="#" id="share-$id" title="$vote.share.0" onclick="jotShare($id); return false">$vote.share.1</a>
+                       {{ 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 $drop.dropping }}
-                                       <input type="checkbox" title="$drop.select" name="itemselected[]" class="item-select" value="$id" />
-                                       <a href="item/drop/$id" onclick="return confirmDelete();" class="icon delete s16" title="$drop.delete">$drop.delete</a>
+                               {{ 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 $edpost }}
-                                       <a class="icon edit s16" href="$edpost.0" title="$edpost.1"></a>
+                               {{ if $item.edpost }}
+                                       <a class="icon edit s16" href="$item.edpost.0" title="$item.edpost.1"></a>
                                {{ endif }}
                        </div>
                        
@@ -82,7 +82,7 @@
        </div>
        <div class="wall-item-bottom">
                <div class="wall-item-links"></div>
-               <div class="wall-item-like" id="wall-item-like-$id">$like</div>
-               <div class="wall-item-dislike" id="wall-item-dislike-$id">$dislike</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>
index abd2862a11f2211cb45b698839db777679075f8b..8b06989faefc1b6c066c465a90475c5cfeb70d41 100644 (file)
@@ -1,79 +1,79 @@
-{{ if $indent }}{{ else }}
+{{ if $item.indent }}{{ else }}
 <div class="wall-item-decor">
-       <span class="icon star $isstarred" id="starred-$id" title="$star.starred">$star.starred</span>
-       {{ if $lock }}<span class="icon lock fakelink" onclick="lockview(event,$id);" title="$lock">$lock</span>{{ endif }}     
-       <img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
+       <span class="icon star $item.isstarred" id="starred-$item.id" title="$item.star.starred">$item.star.starred</span>
+       {{ if $item.lock }}<span class="icon 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>
 {{ endif }}
-<div class="wall-item-container $indent">
+<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$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" 
-                               onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)">
-                               <a href="$profile_url" target="redir" title="$linktitle" class="contact-photo-link" id="wall-item-photo-link-$id">
-                                       <img src="$thumb" class="contact-photo$sparkle" id="wall-item-photo-$id" alt="$name" />
+                               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-$id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$id">menu</a>
-                               <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$id">
-                               $item_photo_menu
+                               <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="$profile_url" target="redir" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle">$name</span></a> 
+                               <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 $plink }}<a class="link" title="$plink.title" href="$plink.href" style="color: #999">$ago</a>{{ else }} $ago {{ endif }}
-                       {{ if $lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$id);">$lock</span> {{ endif }}
+                       {{ if $item.plink }}<a class="link" 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 $title }}<h2><a href="$plink.href">$title</a></h2>{{ endif }}
-                       $body
+                       {{ 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 $tags as $tag }}
-                               <span class='tag'>$tag</span>
+                       {{ for $item.tags as $item.tag }}
+                               <span class='tag'>$item.tag</span>
                        {{ endfor }}
                </div>
        </div>
        <div class="wall-item-bottom">
                <div class="">
-                       {{ if $plink }}<a class="icon s16 link" title="$plink.title" href="$plink.href">$plink.title</a>{{ endif }}
+                       {{ if $item.plink }}<a class="icon s16 link" title="$item.plink.title" href="$item.plink.href">$item.plink.title</a>{{ endif }}
                </div>
                <div class="wall-item-actions">
-                       <div class="wall-item-location">$location&nbsp;</div>
+                       <div class="wall-item-location">$item.location&nbsp;</div>
                        <div class="wall-item-actions-social">
-                       {{ if $star }}
-                               <a href="#" id="star-$id" onclick="dostar($id); return false;"  class="$star.classdo"  title="$star.do">$star.do</a>
-                               <a href="#" id="unstar-$id" onclick="dostar($id); return false;"  class="$star.classundo"  title="$star.undo">$star.undo</a>
-                               <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="$star.classtagger" title="$star.tagger">$star.tagger</a>
+                       {{ 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 $vote }}
-                               <a href="#" id="like-$id" title="$vote.like.0" onclick="dolike($id,'like'); return false">$vote.like.1</a>
-                               <a href="#" id="dislike-$id" title="$vote.dislike.0" onclick="dolike($id,'dislike'); return false">$vote.dislike.1</a>
+                       {{ 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 $vote.share }}
-                               <a href="#" id="share-$id" title="$vote.share.0" onclick="jotShare($id); return false">$vote.share.1</a>
+                       {{ 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 $drop.dropping }}
-                                       <input type="checkbox" title="$drop.select" name="itemselected[]" class="item-select" value="$id" />
-                                       <a href="item/drop/$id" onclick="return confirmDelete();" class="icon delete s16" title="$drop.delete">$drop.delete</a>
+                               {{ 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 $edpost }}
-                                       <a class="icon edit" href="$edpost.0" title="$edpost.1"></a>
+                               {{ if $item.edpost }}
+                                       <a class="icon edit" href="$item.edpost.0" title="$item.edpost.1"></a>
                                {{ endif }}
                        </div>
                        
        </div>
        <div class="wall-item-bottom">
                <div class="wall-item-links"></div>
-               <div class="wall-item-like" id="wall-item-like-$id">$like</div>
-               <div class="wall-item-dislike" id="wall-item-dislike-$id">$dislike</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>
 
 <div class="wall-item-comment-wrapper" >
-       $comment
+       $item.comment
 </div>
index 8e452f4f6e98365c7b898e74d60c9ee8f40e1832..a8a46c34cd37e320c9b7844a75e2f9bea96c1ff0 100644 (file)
@@ -1,88 +1,88 @@
-{{ if $indent }}{{ else }}
+{{ if $item.indent }}{{ else }}
 <div class="wall-item-decor">
-       <span class="icon star $isstarred" id="starred-$id" title="$star.starred">$star.starred</span>
-       {{ if $lock }}<span class="icon lock fakelink" onclick="lockview(event,$id);" title="$lock">$lock</span>{{ endif }}     
-       <img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
+       <span class="icon star $item.isstarred" id="starred-$item.id" title="$item.star.starred">$item.star.starred</span>
+       {{ if $item.lock }}<span class="icon 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>
 {{ endif }}
-<div class="wall-item-container $indent">
+<div class="wall-item-container $item.indent">
        <div class="wall-item-item">
                <div class="wall-item-info">
-                       <div class="contact-photo-wrapper mframe wwto" id="wall-item-ownerphoto-wrapper-$id" >
-                               <a href="$owner_url" target="redir" title="$olinktitle" class="contact-photo-link" id="wall-item-ownerphoto-link-$id">
-                                       <img src="$owner_photo" class="contact-photo $osparkle" id="wall-item-ownerphoto-$id" alt="$owner_name" />
+                       <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="contact-photo-wrapper mframe wwfrom"
-                               onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" 
-                               onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)">
-                               <a href="$profile_url" target="redir" title="$linktitle" class="contact-photo-link" id="wall-item-photo-link-$id">
-                                       <img src="$thumb" class="contact-photo $sparkle" id="wall-item-photo-$id" alt="$name" />
+                               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-$id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$id">menu</a>
-                               <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$id">
-                               $item_photo_menu
+                               <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="$profile_url" target="redir" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle">$name</span></a>
-                               $to <a href="$owner_url" target="redir" title="$olinktitle" class="wall-item-name-link"><span class="wall-item-name$osparkle" id="wall-item-ownername-$id">$owner_name</span></a>
-                                $vwall <span class="wall-item-ago">- &nbsp;
-                                       {{ if $plink }}<a class="link" title="$plink.title" href="$plink.href" style="color: #999">$ago</a>{{ else }} $ago {{ endif }}
-                                       {{ if $lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$id);">$lock</span> {{ endif }}
+                               <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>
+                               $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 <span class="wall-item-ago">- &nbsp;
+                                       {{ if $item.plink }}<a class="link" 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 $title }}<h2><a href="$plink.href">$title</a></h2>{{ endif }}
-                       $body
+                       {{ 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 $tags as $tag }}
-                               <span class='tag'>$tag</span>
+                       {{ for $item.tags as $item.tag }}
+                               <span class='tag'>$item.tag</span>
                        {{ endfor }}
                </div>
        </div>  
        <div class="wall-item-bottom">
                <div class="wall-item-links">
-                       {{ if $plink }}<a class="icon s16 link" title="$plink.title" href="$plink.href">$plink.title</a>{{ endif }}
+                       {{ if $item.plink }}<a class="icon s16 link" title="$item.plink.title" href="$item.plink.href">$item.plink.title</a>{{ endif }}
                </div>
                <div class="wall-item-actions">
 
-                       <div class="wall-item-location">$location&nbsp;</div>   
+                       <div class="wall-item-location">$item.location&nbsp;</div>      
                        
                        <div class="wall-item-actions-social">
-                       {{ if $star }}
-                               <a href="#" id="star-$id" onclick="dostar($id); return false;"  class="$star.classdo"  title="$star.do">$star.do</a>
-                               <a href="#" id="unstar-$id" onclick="dostar($id); return false;"  class="$star.classundo"  title="$star.undo">$star.undo</a>
-                               <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="$star.classtagger" title="$star.tagger">$star.tagger</a>
+                       {{ 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 $vote }}
-                               <a href="#" id="like-$id" title="$vote.like.0" onclick="dolike($id,'like'); return false">$vote.like.1</a>
-                               <a href="#" id="dislike-$id" title="$vote.dislike.0" onclick="dolike($id,'dislike'); return false">$vote.dislike.1</a>
+                       {{ 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 $vote.share }}
-                               <a href="#" id="share-$id" title="$vote.share.0" onclick="jotShare($id); return false">$vote.share.1</a>
+                       {{ 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 $drop.dropping }}
-                                       <input type="checkbox" title="$drop.select" name="itemselected[]" class="item-select" value="$id" />
-                                       <a href="item/drop/$id" onclick="return confirmDelete();" class="icon delete s16" title="$drop.delete">$drop.delete</a>
+                               {{ 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 $edpost }}
-                                       <a class="icon edit s16" href="$edpost.0" title="$edpost.1"></a>
+                               {{ if $item.edpost }}
+                                       <a class="icon edit s16" href="$item.edpost.0" title="$item.edpost.1"></a>
                                {{ endif }}
                        </div>
                        
        </div>
        <div class="wall-item-bottom">
                <div class="wall-item-links"></div>
-               <div class="wall-item-like" id="wall-item-like-$id">$like</div>
-               <div class="wall-item-dislike" id="wall-item-dislike-$id">$dislike</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>
 <div class="wall-item-comment-wrapper" >
-       $comment
+       $item.comment
 </div>
index 83e6dd361bf0c95c59856efd2483e0d2c006d474..ddae5b609ed851a5e9c45e614c9001065981c683 100755 (executable)
@@ -1,75 +1,75 @@
 
 <div class="wall-item-decor">
-       <span class="icon s22 star $isstarred" id="starred-$id" title="$star.starred">$star.starred</span>
-       {{ if $lock }}<span class="icon s22 lock fakelink" onclick="lockview(event,$id);" title="$lock">$lock</span>{{ endif }} 
-       <img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
+       <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 $indent">
+<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$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" 
-                               onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)">
-                               <a href="$profile_url" target="redir" title="$linktitle" class="contact-photo-link" id="wall-item-photo-link-$id">
-                                       <img src="$thumb" class="contact-photo$sparkle" id="wall-item-photo-$id" alt="$name" />
+                               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-$id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$id">menu</a>
-                               <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$id">
-                               $item_photo_menu
+                               <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">$location</div> 
+                       <div class="wall-item-location">$item.location</div>    
                </div>
                <div class="wall-item-content">
-                       {{ if $title }}<h2><a href="$plink.href">$title</a></h2>{{ endif }}
-                       $body
+                       {{ 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 $tags as $tag }}
-                               <span class='tag'>$tag</span>
+                       {{ for $item.tags as $item.tag }}
+                               <span class='tag'>$item.tag</span>
                        {{ endfor }}
                </div>
        </div>
        <div class="wall-item-bottom">
                <div class="">
-                       {{ if $plink }}<a class="icon s16 link" title="$plink.title" href="$plink.href">$plink.title</a>{{ endif }}
+                       {{ if $item.plink }}<a class="icon s16 link" 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="$profile_url" target="redir" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle">$name</span></a> <span class="wall-item-ago">$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">$item.ago</span>
                        </div>
                        
                        <div class="wall-item-actions-social">
-                       {{ if $star }}
-                               <a href="#" id="star-$id" onclick="dostar($id); return false;"  class="$star.classdo"  title="$star.do">$star.do</a>
-                               <a href="#" id="unstar-$id" onclick="dostar($id); return false;"  class="$star.classundo"  title="$star.undo">$star.undo</a>
-                               <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="$star.classtagger" title="$star.tagger">$star.tagger</a>
+                       {{ 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 $vote }}
-                               <a href="#" id="like-$id" title="$vote.like.0" onclick="dolike($id,'like'); return false">$vote.like.1</a>
-                               <a href="#" id="dislike-$id" title="$vote.dislike.0" onclick="dolike($id,'dislike'); return false">$vote.dislike.1</a>
+                       {{ 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 $vote.share }}
-                               <a href="#" id="share-$id" title="$vote.share.0" onclick="jotShare($id); return false">$vote.share.1</a>
+                       {{ 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 $drop.dropping }}
-                                       <input type="checkbox" title="$drop.select" name="itemselected[]" class="item-select" value="$id" />
-                                       <a href="item/drop/$id" onclick="return confirmDelete();" class="icon delete s16" title="$drop.delete">$drop.delete</a>
+                               {{ 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 $edpost }}
-                                       <a class="icon edit s16" href="$edpost.0" title="$edpost.1"></a>
+                               {{ if $item.edpost }}
+                                       <a class="icon edit s16" href="$item.edpost.0" title="$item.edpost.1"></a>
                                {{ endif }}
                        </div>
                        
        </div>
        <div class="wall-item-bottom">
                <div class="wall-item-links"></div>
-               <div class="wall-item-like" id="wall-item-like-$id">$like</div>
-               <div class="wall-item-dislike" id="wall-item-dislike-$id">$dislike</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>
 
 <div class="wall-item-comment-wrapper" >
-       $comment
+       $item.comment
 </div>
index 61a248135debd91806a6eb82e5b12c0549121725..3fc704e350bbd4e7377a57d1478b6b3ddacfa2ea 100755 (executable)
@@ -1,82 +1,82 @@
 <div class="wall-item-decor">
-       <span class="icon s22 star $isstarred" id="starred-$id" title="$star.starred">$star.starred</span>
-       {{ if $lock }}<span class="icon s22 lock fakelink" onclick="lockview(event,$id);" title="$lock">$lock</span>{{ endif }} 
-       <img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
+       <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 $indent">
+<div class="wall-item-container $item.indent">
        <div class="wall-item-item">
                <div class="wall-item-info">
                        <div class="contact-photo-wrapper mframe wwfrom"
-                               onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" 
-                               onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)">
-                               <a href="$profile_url" target="redir" title="$linktitle" class="contact-photo-link" id="wall-item-photo-link-$id">
-                                       <img src="$thumb" class="contact-photo $sparkle" id="wall-item-photo-$id" alt="$name" />
+                               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-$id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$id">menu</a>
-                               <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$id">
-                               $item_photo_menu
+                               <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-$id" >
-                               <a href="$owner_url" target="redir" title="$olinktitle" class="contact-photo-link" id="wall-item-ownerphoto-link-$id">
-                                       <img src="$owner_photo" class="contact-photo $osparkle" id="wall-item-ownerphoto-$id" alt="$owner_name" />
+                       <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">$location</div> 
+                       <div class="wall-item-location">$item.location</div>    
                </div>
                <div class="wall-item-content">
-                       {{ if $title }}<h2><a href="$plink.href">$title</a></h2>{{ endif }}
-                       $body
+                       {{ 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 $tags as $tag }}
-                               <span class='tag'>$tag</span>
+                       {{ for $item.tags as $item.tag }}
+                               <span class='tag'>$item.tag</span>
                        {{ endfor }}
                </div>
        </div>  
        <div class="wall-item-bottom">
                <div class="wall-item-links">
-                       {{ if $plink }}<a class="icon s16 link" title="$plink.title" href="$plink.href">$plink.title</a>{{ endif }}
+                       {{ if $item.plink }}<a class="icon s16 link" 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="$profile_url" target="redir" title="$linktitle" class="wall-item-name-link"><span class="wall-item-name$sparkle">$name</span></a> <span class="wall-item-ago">$ago</span>
-                                <br/>$to <a href="$owner_url" target="redir" title="$olinktitle" class="wall-item-name-link"><span class="wall-item-name$osparkle" id="wall-item-ownername-$id">$owner_name</span></a> $vwall
+                               <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 $star }}
-                               <a href="#" id="star-$id" onclick="dostar($id); return false;"  class="$star.classdo"  title="$star.do">$star.do</a>
-                               <a href="#" id="unstar-$id" onclick="dostar($id); return false;"  class="$star.classundo"  title="$star.undo">$star.undo</a>
-                               <a href="#" id="tagger-$id" onclick="itemTag($id); return false;" class="$star.classtagger" title="$star.tagger">$star.tagger</a>
+                       {{ 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 $vote }}
-                               <a href="#" id="like-$id" title="$vote.like.0" onclick="dolike($id,'like'); return false">$vote.like.1</a>
-                               <a href="#" id="dislike-$id" title="$vote.dislike.0" onclick="dolike($id,'dislike'); return false">$vote.dislike.1</a>
+                       {{ 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 $vote.share }}
-                               <a href="#" id="share-$id" title="$vote.share.0" onclick="jotShare($id); return false">$vote.share.1</a>
+                       {{ 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 $drop.dropping }}
-                                       <input type="checkbox" title="$drop.select" name="itemselected[]" class="item-select" value="$id" />
-                                       <a href="item/drop/$id" onclick="return confirmDelete();" class="icon delete s16" title="$drop.delete">$drop.delete</a>
+                               {{ 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 $edpost }}
-                                       <a class="icon edit s16" href="$edpost.0" title="$edpost.1"></a>
+                               {{ if $item.edpost }}
+                                       <a class="icon edit s16" href="$item.edpost.0" title="$item.edpost.1"></a>
                                {{ endif }}
                        </div>
                        
        </div>
        <div class="wall-item-bottom">
                <div class="wall-item-links"></div>
-               <div class="wall-item-like" id="wall-item-like-$id">$like</div>
-               <div class="wall-item-dislike" id="wall-item-dislike-$id">$dislike</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>
 <div class="wall-item-comment-wrapper" >
-       $comment
+       $item.comment
 </div>