define ( 'FRIENDICA_CODENAME', 'Asparagus');
define ( 'FRIENDICA_VERSION', '3.5-dev' );
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
-define ( 'DB_UPDATE_VERSION', 1196 );
+define ( 'DB_UPDATE_VERSION', 1197 );
/**
* @brief Constant with a HTML line break.
-- ------------------------------------------
-- Friendica 3.5-dev (Asparagus)
--- DB_UPDATE_VERSION 1196
+-- DB_UPDATE_VERSION 1197
-- ------------------------------------------
`commented` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`received` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`changed` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `owner-id` int(11) NOT NULL DEFAULT 0,
`owner-name` varchar(255) NOT NULL DEFAULT '',
`owner-link` varchar(255) NOT NULL DEFAULT '',
`owner-avatar` varchar(255) NOT NULL DEFAULT '',
+ `author-id` int(11) NOT NULL DEFAULT 0,
`author-name` varchar(255) NOT NULL DEFAULT '',
`author-link` varchar(255) NOT NULL DEFAULT '',
`author-avatar` varchar(255) NOT NULL DEFAULT '',
`uid` int(10) unsigned NOT NULL DEFAULT 0,
`contact-id` int(11) unsigned NOT NULL DEFAULT 0,
`gcontact-id` int(11) unsigned NOT NULL DEFAULT 0,
+ `owner-id` int(11) unsigned NOT NULL DEFAULT 0,
+ `author-id` int(11) unsigned NOT NULL DEFAULT 0,
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`edited` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`commented` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
$profile["bd"] = (++$current_year)."-".$month."-".$day;
} else
$profile["bd"] = "0000-00-00";
- } else {
+ } else
$profile = $default;
- if (!isset($profile["thumb"]) AND isset($profile["photo"]))
- $profile["thumb"] = $profile["photo"];
- }
+
+ if (($profile["photo"] == "") AND isset($default["photo"]))
+ $profile["photo"] = $default["photo"];
+
+ if (($profile["name"] == "") AND isset($default["name"]))
+ $profile["name"] = $default["name"];
+
+ if (($profile["network"] == "") AND isset($default["network"]))
+ $profile["network"] = $default["network"];
+
+ if (!isset($profile["thumb"]) AND isset($profile["photo"]))
+ $profile["thumb"] = $profile["photo"];
if ((($profile["addr"] == "") OR ($profile["name"] == "")) AND ($profile["gid"] != 0) AND
in_array($profile["network"], array(NETWORK_DFRN, NETWORK_DIASPORA, NETWORK_OSTATUS)))
$data = probe_url($url);
// Does this address belongs to a valid network?
- if (!in_array($data["network"], array(NETWORK_DFRN, NETWORK_OSTATUS, NETWORK_DIASPORA)))
- return 0;
+ if (!in_array($data["network"], array(NETWORK_DFRN, NETWORK_OSTATUS, NETWORK_DIASPORA))) {
+ if ($uid != 0)
+ return 0;
+
+ // Get data from the gcontact table
+ $r = q("SELECT `name`, `nick`, `url`, `photo`, `addr`, `alias`, `network` FROM `gcontact` WHERE `nurl` = '%s'",
+ dbesc(normalise_link($url)));
+ if (!$r)
+ return 0;
+
+ $data = $r[0];
+ }
$url = $data["url"];
return 0;
$contactid = $contact[0]["id"];
+
+ // Update the newly created contact from data in the gcontact table
+ $r = q("SELECT `location`, `about`, `keywords`, `gender` FROM `gcontact` WHERE `nurl` = '%s'",
+ dbesc(normalise_link($data["url"])));
+ if ($r) {
+ logger("Update contact ".$data["url"]);
+ q("UPDATE `contact` SET `location` = '%s', `about` = '%s', `keywords` = '%s', `gender` = '%s' WHERE `id` = %d",
+ dbesc($r["location"]), dbesc($r["about"]), dbesc($r["keywords"]),
+ dbesc($r["gender"]), intval($contactid));
+ }
}
if ((count($contact) > 1) AND ($uid == 0) AND ($contactid != 0) AND ($url != ""))
if ($itemcache == "")
$reldate = (($posted) ? " " . relative_date($posted) : '');
+ // We only call this so that a previously unknown contact can be added.
+ // This is important for the function "get_contact_details_by_url".
+ // This function then can fetch an entry from the contact table.
+ get_contact($profile, 0);
+
$data = get_contact_details_by_url($profile);
if (isset($data["name"]) AND isset($data["addr"]))
if (isset($data["name"]))
$author = $data["name"];
- if (isset($data["photo"]))
- $avatar = $data["photo"];
+ if (isset($data["thumb"]))
+ $avatar = $data["thumb"];
$preshare = trim($share[1]);
default:
$text = trim($share[1])."\n";
+ $avatar = proxy_url($avatar, false, PROXY_SIZE_THUMB);
+
$tpl = get_markup_template('shared_content.tpl');
$text .= replace_macros($tpl,
array(
}
/**
- * @brief List of all contact fields that are needed for the conversation function
+ * @brief SQL query for items
*/
-function contact_fieldlist() {
+function item_query() {
- $fieldlist = "`contact`.`network`, `contact`.`url`, `contact`.`name`, `contact`.`writable`,
- `contact`.`self`, `contact`.`id` AS `cid`, `contact`.`alias`";
-
- return $fieldlist;
-}
-
-/**
- * @brief SQL condition for contacts
- */
-function contact_condition() {
-
- $condition = "NOT `contact`.`blocked` AND NOT `contact`.`pending`";
-
- return $condition;
+ return "SELECT ".item_fieldlists()." FROM `item` ".
+ item_joins()." WHERE ".item_condition();
}
/**
- * @brief List of all item fields that are needed for the conversation function
+ * @brief List of all data fields that are needed for displaying items
*/
-function item_fieldlist() {
+function item_fieldlists() {
/*
These Fields are not added below (yet). They are here to for bug search.
`item`.`type`,
+`item`.`object`,
`item`.`extid`,
`item`.`received`,
`item`.`changed`,
-`item`.`author-avatar`,
-`item`.`object`,
+`item`.`moderated`,
`item`.`target-type`,
`item`.`target`,
`item`.`resource-id`,
`item`.`attach`,
`item`.`inform`,
`item`.`pubmail`,
-`item`.`moderated`,
`item`.`visible`,
`item`.`spam`,
-`item`.`starred`,
`item`.`bookmark`,
`item`.`unseen`,
`item`.`deleted`,
`item`.`shadow`,
*/
- $fieldlist = "`item`.`author-link`, `item`.`verb`, `item`.`id`, `item`.`parent`, `item`.`file`,
- `item`.`uid`, `item`.`author-name`, `item`.`location`, `item`.`coord`,
- `item`.`title`, `item`.`uri`, `item`.`created`, `item`.`app`, `item`.`guid`,
- `item`.`contact-id`, `item`.`thr-parent`, `item`.`parent-uri`, `item`.`rendered-hash`,
- `item`.`body`, `item`.`rendered-html`, `item`.`private`, `item`.`edited`,
- `item`.`allow_cid`, `item`.`allow_gid`, `item`.`deny_cid`, `item`.`deny_gid`,
- `item`.`event-id`, `item`.`object-type`, `item`.`starred`, `item`.`created`,
- `item`.`postopts`, `item`.`owner-link`, `item`.`owner-name`, `item`.`owner-avatar`,
- `item`.`plink`, `item`.`wall`, `item`.`commented`,
- `item`.`id` AS `item_id`, `item`.`network` AS `item_network`";
-
- return $fieldlist;
+ return "`item`.`author-link`, `item`.`author-name`, `item`.`author-avatar`,
+ `item`.`owner-link`, `item`.`owner-name`, `item`.`owner-avatar`,
+ `item`.`contact-id`, `item`.`uid`, `item`.`id`, `item`.`parent`,
+ `item`.`uri`, `item`.`thr-parent`, `item`.`parent-uri`,
+ `item`.`commented`, `item`.`created`, `item`.`edited`,
+ `item`.`verb`, `item`.`object-type`, `item`.`postopts`, `item`.`plink`,
+ `item`.`guid`, `item`.`wall`, `item`.`private`, `item`.`starred`,
+ `item`.`title`, `item`.`body`, `item`.`file`, `item`.`event-id`,
+ `item`.`location`, `item`.`coord`, `item`.`app`,
+ `item`.`rendered-hash`, `item`.`rendered-html`,
+ `item`.`allow_cid`, `item`.`allow_gid`, `item`.`deny_cid`, `item`.`deny_gid`,
+ `item`.`id` AS `item_id`, `item`.`network` AS `item_network`,
+
+ `author`.`thumb` AS `author-thumb`, `owner`.`thumb` AS `owner-thumb`,
+
+ `contact`.`network`, `contact`.`url`, `contact`.`name`, `contact`.`writable`,
+ `contact`.`self`, `contact`.`id` AS `cid`, `contact`.`alias`";
}
/**
- * @brief SQL condition for items
+ * @brief SQL join for contacts that are needed for displaying items
*/
-function item_condition() {
+function item_joins() {
+
+ return "STRAIGHT_JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND
+ NOT `contact`.`blocked` AND NOT `contact`.`pending`
+ LEFT JOIN `contact` AS `author` ON `author`.`id`=`item`.`author-id`
+ LEFT JOIN `contact` AS `owner` ON `owner`.`id`=`item`.`owner-id`";
+}
- $condition = "`item`.`visible` AND NOT `item`.`deleted` AND NOT `item`.`moderated`";
+/**
+ * @brief SQL condition for items that are needed for displaying items
+ */
+function item_condition() {
- return $condition;
+ return "`item`.`visible` AND NOT `item`.`deleted` AND NOT `item`.`moderated`";
}
/**
$comment = '';
$owner_url = '';
- $owner_photo = '';
$owner_name = '';
$sparkle = '';
$tags[] = $prefix."<a href=\"".$tag["url"]."\" target=\"_blank\">".$tag["term"]."</a>";
}
- /*foreach(explode(',',$item['tag']) as $tag){
- $tag = trim($tag);
- if ($tag!="") {
- $t = bbcode($tag);
- $tags[] = $t;
- if($t[0] == '#')
- $hashtags[] = $t;
- elseif($t[0] == '@')
- $mentions[] = $t;
- }
- }*/
-
$sp = false;
$profile_link = best_link_url($item,$sp);
if($profile_link === 'mailbox')
else
$profile_link = zrl($profile_link);
- // Don't rely on the author-avatar. It is better to use the data from the contact table
- $author_contact = get_contact_details_by_url($item['author-link'], $profile_owner);
- if ($author_contact["thumb"])
- $profile_avatar = $author_contact["thumb"];
- else
- $profile_avatar = $item['author-avatar'];
+ if (!isset($item['author-thumb'])) {
+ $author_contact = get_contact_details_by_url($item['author-link'], $profile_owner);
+ if ($author_contact["thumb"])
+ $item['author-thumb'] = $author_contact["thumb"];
+ else
+ $item['author-thumb'] = $item['author-avatar'];
+ }
+
+ if (!isset($item['owner-thumb'])) {
+ $owner_contact = get_contact_details_by_url($item['owner-link'], $profile_owner);
+ if ($owner_contact["thumb"])
+ $item['owner-thumb'] = $owner_contact["thumb"];
+ else
+ $item['owner-thumb'] = $item['owner-avatar'];
+ }
$locate = array('location' => $item['location'], 'coord' => $item['coord'], 'html' => '');
call_hooks('render_location',$locate);
'name' => $profile_name_e,
'sparkle' => $sparkle,
'lock' => $lock,
- 'thumb' => App::remove_baseurl(proxy_url($profile_avatar, false, PROXY_SIZE_THUMB)),
+ 'thumb' => App::remove_baseurl(proxy_url($item['author-thumb'], false, PROXY_SIZE_THUMB)),
'title' => $item['title_e'],
'body' => $body_e,
'tags' => $tags_e,
'indent' => '',
'owner_name' => $owner_name_e,
'owner_url' => $owner_url,
- 'owner_photo' => proxy_url($owner_photo, false, PROXY_SIZE_THUMB),
+ 'owner_photo' => App::remove_baseurl(proxy_url($item['owner-thumb'], false, PROXY_SIZE_THUMB)),
'plink' => get_plink($item),
'edpost' => false,
'isstarred' => $isstarred,
function best_link_url($item,&$sparkle,$ssl_state = false) {
- $a = get_app();
-
$best_url = '';
$sparkle = false;
if(! function_exists('item_photo_menu')){
function item_photo_menu($item){
- $a = get_app();
$ssl_state = false;
"commented" => array("type" => "datetime", "not null" => "1", "default" => "0000-00-00 00:00:00"),
"received" => array("type" => "datetime", "not null" => "1", "default" => "0000-00-00 00:00:00"),
"changed" => array("type" => "datetime", "not null" => "1", "default" => "0000-00-00 00:00:00"),
+ "owner-id" => array("type" => "int(11)", "not null" => "1", "default" => "0"),
"owner-name" => array("type" => "varchar(255)", "not null" => "1", "default" => ""),
"owner-link" => array("type" => "varchar(255)", "not null" => "1", "default" => ""),
"owner-avatar" => array("type" => "varchar(255)", "not null" => "1", "default" => ""),
+ "author-id" => array("type" => "int(11)", "not null" => "1", "default" => "0"),
"author-name" => array("type" => "varchar(255)", "not null" => "1", "default" => ""),
"author-link" => array("type" => "varchar(255)", "not null" => "1", "default" => ""),
"author-avatar" => array("type" => "varchar(255)", "not null" => "1", "default" => ""),
"uid" => array("type" => "int(10) unsigned", "not null" => "1", "default" => "0"),
"contact-id" => array("type" => "int(11) unsigned", "not null" => "1", "default" => "0"),
"gcontact-id" => array("type" => "int(11) unsigned", "not null" => "1", "default" => "0"),
+ "owner-id" => array("type" => "int(11) unsigned", "not null" => "1", "default" => "0"),
+ "author-id" => array("type" => "int(11) unsigned", "not null" => "1", "default" => "0"),
"created" => array("type" => "datetime", "not null" => "1", "default" => "0000-00-00 00:00:00"),
"edited" => array("type" => "datetime", "not null" => "1", "default" => "0000-00-00 00:00:00"),
"commented" => array("type" => "datetime", "not null" => "1", "default" => "0000-00-00 00:00:00"),
xml::add_element($doc, $relocate, "dfrn:url", $owner['url']);
xml::add_element($doc, $relocate, "dfrn:name", $owner['name']);
xml::add_element($doc, $relocate, "dfrn:addr", $owner['addr']);
+ xml::add_element($doc, $relocate, "dfrn:avatar", $owner['avatar']);
xml::add_element($doc, $relocate, "dfrn:photo", $photos[4]);
xml::add_element($doc, $relocate, "dfrn:thumb", $photos[5]);
xml::add_element($doc, $relocate, "dfrn:micro", $photos[6]);
$relocate["url"] = $xpath->query("dfrn:url/text()", $relocation)->item(0)->nodeValue;
$relocate["addr"] = $xpath->query("dfrn:addr/text()", $relocation)->item(0)->nodeValue;
$relocate["name"] = $xpath->query("dfrn:name/text()", $relocation)->item(0)->nodeValue;
+ $relocate["avatar"] = $xpath->query("dfrn:avatar/text()", $relocation)->item(0)->nodeValue;
$relocate["photo"] = $xpath->query("dfrn:photo/text()", $relocation)->item(0)->nodeValue;
$relocate["thumb"] = $xpath->query("dfrn:thumb/text()", $relocation)->item(0)->nodeValue;
$relocate["micro"] = $xpath->query("dfrn:micro/text()", $relocation)->item(0)->nodeValue;
$relocate["poll"] = $xpath->query("dfrn:poll/text()", $relocation)->item(0)->nodeValue;
$relocate["sitepubkey"] = $xpath->query("dfrn:sitepubkey/text()", $relocation)->item(0)->nodeValue;
+ if (($relocate["avatar"] == "") AND ($relocate["photo"] != ""))
+ $relocate["avatar"] = $relocate["photo"];
+
if ($relocate["addr"] == "")
$relocate["addr"] = preg_replace("=(https?://)(.*)/profile/(.*)=ism", "$3@$2", $relocate["url"]);
`server_url` = '%s'
WHERE `nurl` = '%s';",
dbesc($relocate["name"]),
- dbesc($relocate["photo"]),
+ dbesc($relocate["avatar"]),
dbesc($relocate["url"]),
dbesc(normalise_link($relocate["url"])),
dbesc($relocate["addr"]),
// Update the contact table. We try to find every entry.
$x = q("UPDATE `contact` SET
`name` = '%s',
- `photo` = '%s',
- `thumb` = '%s',
- `micro` = '%s',
+ `avatar` = '%s',
`url` = '%s',
`nurl` = '%s',
`addr` = '%s',
`site-pubkey` = '%s'
WHERE (`id` = %d AND `uid` = %d) OR (`nurl` = '%s');",
dbesc($relocate["name"]),
- dbesc($relocate["photo"]),
- dbesc($relocate["thumb"]),
- dbesc($relocate["micro"]),
+ dbesc($relocate["avatar"]),
dbesc($relocate["url"]),
dbesc(normalise_link($relocate["url"])),
dbesc($relocate["addr"]),
intval($importer["importer_uid"]),
dbesc(normalise_link($old["url"])));
+ update_contact_avatar($relocate["avatar"], $importer["importer_uid"], $importer["id"], true);
+
if ($x === false)
return false;
$fields = array(
'owner-link' => array($old["url"], $relocate["url"]),
'author-link' => array($old["url"], $relocate["url"]),
- 'owner-avatar' => array($old["photo"], $relocate["photo"]),
- 'author-avatar' => array($old["photo"], $relocate["photo"]),
+ //'owner-avatar' => array($old["photo"], $relocate["photo"]),
+ //'author-avatar' => array($old["photo"], $relocate["photo"]),
);
- foreach ($fields as $n=>$f){
- $x = q("UPDATE `item` SET `%s` = '%s' WHERE `%s` = '%s' AND `uid` = %d",
- $n, dbesc($f[1]),
+ foreach ($fields as $n=>$f) {
+ $r = q("SELECT `id` FROM `item` WHERE `%s` = '%s' AND `uid` = %d LIMIT 1",
$n, dbesc($f[0]),
intval($importer["importer_uid"]));
- if ($x === false)
- return false;
+
+ if ($r) {
+ $x = q("UPDATE `item` SET `%s` = '%s' WHERE `%s` = '%s' AND `uid` = %d",
+ $n, dbesc($f[1]),
+ $n, dbesc($f[0]),
+ intval($importer["importer_uid"]));
+ if ($x === false)
+ return false;
}
+ }
/// @TODO
/// merge with current record, current contents have priority
function format_event_html($ev, $simple = false) {
-
-
if(! ((is_array($ev)) && count($ev)))
return '';
return $events;
}
+
+/**
+ * @brief Format event to export format (ical/csv)
+ *
+ * @param array $events Query result for events
+ * @param string $format The output format (ical/csv)
+ * @param string $timezone The timezone of the user (not implemented yet)
+ *
+ * @return string Content according to selected export format
+ */
+function event_format_export ($events, $format = 'ical', $timezone) {
+ if(! ((is_array($events)) && count($events)))
+ return;
+
+ switch ($format) {
+ // format the exported data as a CSV file
+ case "csv":
+ header("Content-type: text/csv");
+ $o = '"Subject", "Start Date", "Start Time", "Description", "End Date", "End Time", "Location"' . PHP_EOL;
+
+ foreach ($events as $event) {
+ /// @todo the time / date entries don't include any information about the
+ // timezone the event is scheduled in :-/
+ $tmp1 = strtotime($event['start']);
+ $tmp2 = strtotime($event['finish']);
+ $time_format = "%H:%M:%S";
+ $date_format = "%Y-%m-%d";
+ $o .= '"'.$event['summary'].'", "'.strftime($date_format, $tmp1) .
+ '", "'.strftime($time_format, $tmp1).'", "'.$event['desc'] .
+ '", "'.strftime($date_format, $tmp2) .
+ '", "'.strftime($time_format, $tmp2) .
+ '", "'.$event['location'].'"' . PHP_EOL;
+ }
+ break;
+
+ // format the exported data as a ics file
+ case "ical":
+ header("Content-type: text/ics");
+ $o = 'BEGIN:VCALENDAR'. PHP_EOL
+ . 'VERSION:2.0' . PHP_EOL
+ . 'PRODID:-//friendica calendar export//0.1//EN' . PHP_EOL;
+ /// @todo include timezone informations in cases were the time is not in UTC
+ // see http://tools.ietf.org/html/rfc2445#section-4.8.3
+ // . 'BEGIN:VTIMEZONE' . PHP_EOL
+ // . 'TZID:' . $timezone . PHP_EOL
+ // . 'END:VTIMEZONE' . PHP_EOL;
+ // TODO instead of PHP_EOL CRLF should be used for long entries
+ // but test your solution against http://icalvalid.cloudapp.net/
+ // also long lines SHOULD be split at 75 characters length
+ foreach ($events as $event) {
+ if ($event['adjust'] == 1) {
+ $UTC = 'Z';
+ } else {
+ $UTC = '';
+ }
+ $o .= 'BEGIN:VEVENT' . PHP_EOL;
+ if ($event[start]) {
+ $tmp = strtotime($event['start']);
+ $dtformat = "%Y%m%dT%H%M%S".$UTC;
+ $o .= 'DTSTART:'.strftime($dtformat, $tmp).PHP_EOL;
+ }
+ if ($event['finish']) {
+ $tmp = strtotime($event['finish']);
+ $dtformat = "%Y%m%dT%H%M%S".$UTC;
+ $o .= 'DTEND:'.strftime($dtformat, $tmp).PHP_EOL;
+ }
+ if ($event['summary'])
+ $tmp = $event['summary'];
+ $tmp = str_replace(PHP_EOL, PHP_EOL.' ',$tmp);
+ $tmp = addcslashes($tmp, ',;');
+ $o .= 'SUMMARY:' . $tmp . PHP_EOL;
+ if ($event['desc'])
+ $tmp = $event['desc'];
+ $tmp = str_replace(PHP_EOL, PHP_EOL.' ',$tmp);
+ $tmp = addcslashes($tmp, ',;');
+ $o .= 'DESCRIPTION:' . $tmp . PHP_EOL;
+ if ($event['location']) {
+ $tmp = $event['location'];
+ $tmp = str_replace(PHP_EOL, PHP_EOL.' ',$tmp);
+ $tmp = addcslashes($tmp, ',;');
+ $o .= 'LOCATION:' . $tmp . PHP_EOL;
+ }
+
+ $o .= 'END:VEVENT' . PHP_EOL;
+ $o .= PHP_EOL;
+ }
+
+ $o .= 'END:VCALENDAR' . PHP_EOL;
+ break;
+ }
+
+ return $o;
+}
+
+/**
+ * @brief Get all events for a user ID
+ *
+ * The query for events is done permission sensitive
+ * If the user is the owner of the calendar he/she
+ * will get all of his/her available events.
+ * If the user is only a visitor only the public events will
+ * be available
+ *
+ * @param int $uid The user ID
+ * @param int $sql_extra Additional sql conditions for permission
+ *
+ * @return array Query results
+ */
+function events_by_uid($uid = 0, $sql_extra = '') {
+ if($uid == 0)
+ return;
+
+ // The permission condition if no condition was transmitted
+ if($sql_extra == '')
+ $sql_extra = " AND `allow_cid` = '' AND `allow_gid` = '' ";
+
+ // does the user who requests happen to be the owner of the events
+ // requested? then show all of your events, otherwise only those that
+ // don't have limitations set in allow_cid and allow_gid
+ if (local_user() == $uid) {
+ $r = q("SELECT `start`, `finish`, `adjust`, `summary`, `desc`, `location`
+ FROM `event` WHERE `uid`= %d AND `cid` = 0 ",
+ intval($uid)
+ );
+ } else {
+ $r = q("SELECT `start`, `finish`, `adjust`, `summary`, `desc`, `location`FROM `event`
+ WHERE `uid` = %d AND `cid` = 0 $sql_extra ",
+ intval($uid)
+ );
+ }
+
+ if(count($r))
+ return $r;
+}
+
+/**
+ *
+ * @param int $uid The user ID
+ * @param string $format Output format (ical/csv)
+ * @return array With the results
+ * bool 'success' => True if the processing was successful
+ * string 'format' => The output format
+ * string 'extension' => The file extension of the output format
+ * string 'content' => The formatted output content
+ *
+ * @todo Respect authenticated users with events_by_uid()
+ */
+function event_export($uid, $format = 'ical') {
+
+ $process = false;
+
+ // we are allowed to show events
+ // get the timezone the user is in
+ $r = q("SELECT `timezone` FROM `user` WHERE `uid` = %d LIMIT 1", intval($uid));
+ if (count($r))
+ $timezone = $r[0]['timezone'];
+
+ // get all events which are owned by a uid (respects permissions);
+ $events = events_by_uid($uid);
+
+ // we have the events that are available for the requestor
+ // now format the output according to the requested format
+ if(count($events))
+ $res = event_format_export($events, $format, $timezone);
+
+ // If there are results the precess was successfull
+ if(x($res))
+ $process = true;
+
+ // get the file extension for the format
+ switch ($format) {
+ case "ical":
+ $file_ext = "ics";
+ break;
+
+ case "csv":
+ $file_ext = "csv";
+ break;
+
+ default:
+ $file_ext = "";
+ }
+
+ $arr = array(
+ 'success' => $process,
+ 'format' => $format,
+ 'extension' => $file_ext,
+ 'content' => $res,
+ );
+
+ return $arr;
+}
+
+/**
+ * @brief Get the events widget
+ *
+ * @return string Formated html of the evens widget
+ */
+function widget_events() {
+ $a = get_app();
+
+ $owner_uid = $a->data['user']['uid'];
+ // $a->data is only available if the profile page is visited. If the visited page is not part
+ // of the profile page it should be the personal /events page. So we can use $a->user
+ $user = ($a->data['user']['nickname'] ? $a->data['user']['nickname'] : $a->user['nickname']);
+
+ if( !(local_user() )&& !(feature_enabled($owner_uid, "export_calendar")) )
+ return;
+
+ return replace_macros(get_markup_template("events_aside.tpl"), array(
+ '$etitle' => t("Export"),
+ '$export_ical' => t("Export calendar as ical"),
+ '$export_csv' => t("Export calendar as csv"),
+ '$user' => $user
+ ));
+
+}
//array('expire', t('Content Expiration'), t('Remove old posts/comments after a period of time')),
array('multi_profiles', t('Multiple Profiles'), t('Ability to create multiple profiles'), false, get_config('feature_lock','multi_profiles')),
array('photo_location', t('Photo Location'), t('Photo metadata is normally stripped. This extracts the location (if present) prior to stripping metadata and links it to a map.'), false, get_config('feature_lock','photo_location')),
+ array('export_calendar', t('Export Public Calendar'), t('Ability for visitors to download the public calendar'), false, get_config('feature_lock','export_calendar')),
),
// Post composition
"photo" => $arr['author-avatar'], "name" => $arr['author-name']));
}
+ if ($arr["author-id"] == 0)
+ $arr["author-id"] = get_contact($arr["author-link"], 0);
+
+ if ($arr["owner-id"] == 0)
+ $arr["owner-id"] = get_contact($arr["owner-link"], 0);
+
if ($arr['guid'] != "") {
// Checking if there is already an item with the same guid
logger('checking for an item for user '.$arr['uid'].' on network '.$arr['network'].' with the guid '.$arr['guid'], LOGGER_DEBUG);
<?php
function add_thread($itemid, $onlyshadow = false) {
- $items = q("SELECT `uid`, `created`, `edited`, `commented`, `received`, `changed`, `wall`, `private`, `pubmail`, `moderated`, `visible`, `spam`, `starred`, `bookmark`, `contact-id`, `gcontact-id`,
- `deleted`, `origin`, `forum_mode`, `mention`, `network` FROM `item` WHERE `id` = %d AND (`parent` = %d OR `parent` = 0) LIMIT 1", intval($itemid), intval($itemid));
+ $items = q("SELECT `uid`, `created`, `edited`, `commented`, `received`, `changed`, `wall`, `private`, `pubmail`,
+ `moderated`, `visible`, `spam`, `starred`, `bookmark`, `contact-id`, `gcontact-id`,
+ `deleted`, `origin`, `forum_mode`, `mention`, `network`, `author-id`, `owner-id`
+ FROM `item` WHERE `id` = %d AND (`parent` = %d OR `parent` = 0) LIMIT 1", intval($itemid), intval($itemid));
if (!$items)
return;
$a->data['user'] = $user[0];
$a->profile_uid = $user[0]['uid'];
+ // if it's a json request abort here becaus we don't
+ // need the widget data
+ if ($a->argv[2] === 'json')
+ return;
+
$profile = get_profiledata_by_nick($nick, $a->profile_uid);
if((intval($profile['page-flags']) == PAGE_COMMUNITY) || (intval($profile['page-flags']) == PAGE_PRVGROUP))
'$pdesc' => (($profile['pdesc'] != "") ? $profile['pdesc'] : ""),
));
+ $cal_widget = widget_events();
+
if(! x($a->page,'aside'))
$a->page['aside'] = '';
$a->page['aside'] .= $vcard_widget;
+ $a->page['aside'] .= $cal_widget;
}
return;
$m = 0;
$ignored = ((x($_REQUEST,'ignored')) ? intval($_REQUEST['ignored']) : 0);
+ if($a->argc == 4) {
+ if($a->argv[2] == 'export') {
+ $mode = 'export';
+ $format = $a->argv[3];
+ }
+ }
+
//
// Setup permissions structures
//
$contact_id = 0;
$owner_uid = $a->data['user']['uid'];
+ $nick = $a->data['user']['nickname'];
if(is_array($_SESSION['remote'])) {
foreach($_SESSION['remote'] as $v) {
return $o;
}
+
+ if($mode == 'export') {
+ if(! (intval($owner_uid))) {
+ notice( t('User not found'));
+ return;
+ }
+
+ if(! (feature_enabled($owner_uid, "export_calendar"))) {
+ notice( t('Permission denied.') . EOL);
+ return;
+ }
+
+ // Get the export data by uid
+ $evexport = event_export($owner_uid, $format);
+
+ if ($evexport["success"] == false ) {
+ if($evexport["content"])
+ notice( t('This calendar format is not supported') );
+ else
+ notice( t('No exportable data found'));
+
+ return;
+ }
+
+ // If nothing went wrong we can echo the export content
+ if ($evexport["success"] == true ) {
+ header('Content-type: text/calendar');
+ header('content-disposition: attachment; filename="' . t('calendar') . '-' . $nick . '.' . $evexport["extension"] . '"' );
+ echo $evexport["content"];
+ killme();
+ }
+
+ return;
+ }
}
if (get_config('system','community_page_style') == CP_GLOBAL_COMMUNITY)
return(community_getpublicitems($start, $itemspage));
- $r = q("SELECT %s, %s, `user`.`nickname`
+ $r = q("SELECT %s
FROM `thread` FORCE INDEX (`wall_private_received`)
INNER JOIN `user` ON `user`.`uid` = `thread`.`uid` AND NOT `user`.`hidewall`
INNER JOIN `item` ON `item`.`id` = `thread`.`iid`
AND `item`.`allow_cid` = '' AND `item`.`allow_gid` = ''
AND `item`.`deny_cid` = '' AND `item`.`deny_gid` = ''
- INNER JOIN `contact` ON `contact`.`id` = `thread`.`contact-id`
- AND %s AND `contact`.`self`
+ %s AND `contact`.`self`
WHERE `thread`.`visible` AND NOT `thread`.`deleted` AND NOT `thread`.`moderated`
AND NOT `thread`.`private` AND `thread`.`wall`
ORDER BY `thread`.`received` DESC LIMIT %d, %d",
- item_fieldlist(), contact_fieldlist(),
- contact_condition(),
+ item_fieldlists(), item_joins(),
intval($start), intval($itemspage)
);
function community_getpublicitems($start, $itemspage) {
- $r = q("SELECT %s, `author-name` AS `name`, `owner-avatar` AS `photo`,
- `owner-link` AS `url`, `owner-avatar` AS `thumb`
+ $r = q("SELECT %s
FROM `thread`
- INNER JOIN `item` ON `item`.`id` = `thread`.`iid`
+ INNER JOIN `item` ON `item`.`id` = `thread`.`iid` %s
WHERE `thread`.`uid` = 0
ORDER BY `thread`.`created` DESC LIMIT %d, %d",
- item_fieldlist(), intval($start),
- intval($itemspage)
+ item_fieldlists(), item_joins(),
+ intval($start), intval($itemspage)
);
return($r);
return '';
}
- $r = q("SELECT %s, %s FROM `item`
- INNER JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s
- WHERE %s AND `item`.`uid` = %d
+ $r = q(item_query()." AND `item`.`uid` = %d
AND `item`.`parent` = (SELECT `parent` FROM `item` WHERE `id` = %d)
$sql_extra
ORDER BY `parent` DESC, `gravity` ASC, `id` ASC",
- item_fieldlist(), contact_fieldlist(),
- contact_condition(), item_condition(),
intval($a->profile['uid']),
intval($item_id)
);
+
if(!$r && local_user()) {
// Check if this is another person's link to a post that we have
$r = q("SELECT `item`.uri FROM `item`
if($r) {
$item_uri = $r[0]['uri'];
- $r = q("SELECT %s, %s FROM `item`
- INNER JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s
- WHERE %s AND `item`.`uid` = %d
+ $r = q(item_query()." AND `item`.`uid` = %d
AND `item`.`parent` = (SELECT `parent` FROM `item` WHERE `uri` = '%s' AND uid = %d)
ORDER BY `parent` DESC, `gravity` ASC, `id` ASC ",
- item_fieldlist(), contact_fieldlist(),
- contact_condition(), item_condition(),
intval(local_user()),
dbesc($item_uri),
intval(local_user())
}
}
-
if($r) {
if((local_user()) && (local_user() == $a->profile['uid'])) {
require_once('include/event.php');
require_once('include/items.php');
+function events_init(&$a) {
+ if(! local_user())
+ return;
+
+ if($a->argc == 1) {
+ // if it's a json request abort here becaus we don't
+ // need the widget data
+ if($a->argv[1] === 'json')
+ return;
+
+ $cal_widget = widget_events();
+
+ if(! x($a->page,'aside'))
+ $a->page['aside'] = '';
+
+ $a->page['aside'] .= $cal_widget;
+ }
+
+ return;
+}
+
function events_post(&$a) {
logger('post: ' . print_r($_REQUEST,true));
require_once('include/items.php');
require_once('include/Scrape.php');
require_once('include/diaspora.php');
+require_once('include/Contact.php');
function item_post(&$a) {
$datarray['owner-name'] = $contact_record['name'];
$datarray['owner-link'] = $contact_record['url'];
$datarray['owner-avatar'] = $contact_record['thumb'];
+ $datarray["owner-id"] = get_contact($datarray["owner-link"], 0);
$datarray['author-name'] = $author['name'];
$datarray['author-link'] = $author['url'];
$datarray['author-avatar'] = $author['thumb'];
+ $datarray["author-id"] = get_contact($datarray["author-link"], 0);
$datarray['created'] = datetime_convert();
$datarray['edited'] = datetime_convert();
$datarray['commented'] = datetime_convert();
$datarray['moderated'] = $allow_moderated;
$datarray['gcontact-id'] = get_gcontact_id(array("url" => $datarray['author-link'], "network" => $datarray['network'],
"photo" => $datarray['author-avatar'], "name" => $datarray['author-name']));
+
/**
* These fields are for the convenience of plugins...
* 'self' if true indicates the owner is posting on their own wall
$post_id = 0;
- $r = q("INSERT INTO `item` (`guid`, `extid`, `uid`,`type`,`wall`,`gravity`, `network`, `contact-id`,`owner-name`,`owner-link`,`owner-avatar`, `author-name`, `author-link`, `author-avatar`,
- `created`, `edited`, `commented`, `received`, `changed`, `uri`, `thr-parent`, `title`, `body`, `app`, `location`, `coord`, `tag`, `inform`, `verb`, `object-type`, `postopts`,
- `allow_cid`, `allow_gid`, `deny_cid`, `deny_gid`, `private`, `pubmail`, `attach`, `bookmark`,`origin`, `moderated`, `file`, `rendered-html`, `rendered-hash`)
- VALUES( '%s', '%s', %d, '%s', %d, %d, '%s', %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, %d, '%s', %d, %d, %d, '%s', '%s', '%s')",
+ $r = q("INSERT INTO `item` (`guid`, `extid`, `uid`,`type`,`wall`,`gravity`, `network`, `contact-id`,
+ `owner-name`,`owner-link`,`owner-avatar`, `owner-id`,
+ `author-name`, `author-link`, `author-avatar`, `author-id`,
+ `created`, `edited`, `commented`, `received`, `changed`,
+ `uri`, `thr-parent`, `title`, `body`, `app`, `location`, `coord`,
+ `tag`, `inform`, `verb`, `object-type`, `postopts`,
+ `allow_cid`, `allow_gid`, `deny_cid`, `deny_gid`, `private`,
+ `pubmail`, `attach`, `bookmark`,`origin`, `moderated`, `file`,
+ `rendered-html`, `rendered-hash`)
+ VALUES('%s', '%s', %d, '%s', %d, %d, '%s', %d,
+ '%s', '%s', '%s', %d,
+ '%s', '%s', '%s', %d,
+ '%s', '%s', '%s', '%s', '%s',
+ '%s', '%s', '%s', '%s', '%s', '%s', '%s',
+ '%s', '%s', '%s', '%s', '%s',
+ '%s', '%s', '%s', '%s', %d,
+ %d, '%s', %d, %d, %d, '%s',
+ '%s', '%s')",
dbesc($datarray['guid']),
dbesc($datarray['extid']),
intval($datarray['uid']),
dbesc($datarray['owner-name']),
dbesc($datarray['owner-link']),
dbesc($datarray['owner-avatar']),
+ intval($datarray['owner-id']),
dbesc($datarray['author-name']),
dbesc($datarray['author-link']),
dbesc($datarray['author-avatar']),
+ intval($datarray['author-id']),
dbesc($datarray['created']),
dbesc($datarray['edited']),
dbesc($datarray['commented']),
if(get_config('system', 'old_pager')) {
$r = q("SELECT COUNT(*) AS `total`
FROM $sql_table $sql_post_table INNER JOIN `contact` ON `contact`.`id` = $sql_table.`contact-id`
- AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0
- WHERE $sql_table.`uid` = %d AND $sql_table.`visible` = 1 AND $sql_table.`deleted` = 0
+ AND NOT `contact`.`blocked` AND NOT `contact`.`pending`
+ WHERE $sql_table.`uid` = %d AND $sql_table.`visible` AND NOT $sql_table.`deleted`
$sql_extra2 $sql_extra3
$sql_extra $sql_nets ",
intval($_SESSION['uid'])
}
if($nouveau) {
- $simple_update = (($update) ? " AND `item`.`unseen` = 1 " : '');
+ $simple_update = (($update) ? " AND `item`.`unseen` " : '');
if ($sql_order == "")
$sql_order = "`item`.`received`";
// "New Item View" - show all items unthreaded in reverse created date order
- $items = q("SELECT %s, %s FROM $sql_table $sql_post_table
- INNER JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s
+ $items = q("SELECT %s FROM $sql_table $sql_post_table %s
WHERE %s AND `item`.`uid` = %d
$simple_update
$sql_extra $sql_nets
ORDER BY $sql_order DESC $pager_sql ",
- item_fieldlist(), contact_fieldlist(),
- contact_condition(), item_condition(),
+ item_fieldlists(), item_joins(), item_condition(),
intval($_SESSION['uid'])
);
// Fetch a page full of parent items for this page
if($update) {
- if (!get_config("system", "like_no_comment"))
- $sql_extra4 = "(`item`.`deleted` = 0
- OR `item`.`verb` = '".ACTIVITY_LIKE."' OR `item`.`verb` = '".ACTIVITY_DISLIKE."'
- OR `item`.`verb` = '".ACTIVITY_ATTEND."' OR `item`.`verb` = '".ACTIVITY_ATTENDNO."'
- OR `item`.`verb` = '".ACTIVITY_ATTENDMAYBE."')";
+ if (get_config("system", "like_no_comment"))
+ $sql_extra4 = " AND `item`.`verb` = '".ACTIVITY_POST."'";
else
- $sql_extra4 = "`item`.`deleted` = 0 AND `item`.`verb` = '".ACTIVITY_POST."'";
+ $sql_extra4 = "";
$r = q("SELECT `item`.`parent` AS `item_id`, `item`.`network` AS `item_network`, `contact`.`uid` AS `contact_uid`
FROM $sql_table $sql_post_table INNER JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
- AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0
- WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND $sql_extra4
- AND `item`.`moderated` = 0 AND `item`.`unseen` = 1
- $sql_extra3 $sql_extra $sql_nets ORDER BY `item_id` DESC LIMIT 100",
+ AND NOT `contact`.`blocked` AND NOT `contact`.`pending`
+ WHERE `item`.`uid` = %d AND `item`.`visible` AND NOT `item`.`deleted` $sql_extra4
+ AND NOT `item`.`moderated` AND `item`.`unseen`
+ $sql_extra3 $sql_extra $sql_nets
+ ORDER BY `item_id` DESC LIMIT 100",
intval(local_user())
);
} else {
$r = q("SELECT `thread`.`iid` AS `item_id`, `thread`.`network` AS `item_network`, `contact`.`uid` AS `contact_uid`
FROM $sql_table $sql_post_table STRAIGHT_JOIN `contact` ON `contact`.`id` = `thread`.`contact-id`
- AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0
- WHERE `thread`.`uid` = %d AND `thread`.`visible` = 1 AND `thread`.`deleted` = 0
- AND `thread`.`moderated` = 0
+ AND NOT `contact`.`blocked` AND NOT `contact`.`pending`
+ WHERE `thread`.`uid` = %d AND `thread`.`visible` AND NOT `thread`.`deleted`
+ AND NOT `thread`.`moderated`
$sql_extra2 $sql_extra3 $sql_extra $sql_nets
ORDER BY $sql_order DESC $pager_sql ",
intval(local_user())
$items = array();
foreach ($parents_arr AS $parents) {
-// $sql_extra ORDER BY `item`.`commented` DESC LIMIT %d",
- $thread_items = q("SELECT %s, %s FROM `item`
- INNER JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s
- WHERE %s AND `item`.`uid` = %d
+ $thread_items = q(item_query()." AND `item`.`uid` = %d
AND `item`.`parent` = %d
ORDER BY `item`.`commented` DESC LIMIT %d",
- item_fieldlist(), contact_fieldlist(),
- contact_condition(), item_condition(),
intval(local_user()),
intval($parents),
intval($max_comments + 1)
$sql_extra = " AND `allow_cid` = '<" . $a->contact['id'] . ">' ";
$r = q("SELECT COUNT(*) AS `total`
- FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s
+ FROM `item` %s
WHERE %s AND `item`.`uid` = %d AND `item`.`type` = 'note'
AND `contact`.`self` AND `item`.`id` = `item`.`parent` AND NOT `item`.`wall`
$sql_extra ",
- contact_condition(), item_condition(),
+ item_joins(), item_condition(),
intval(local_user())
);
$a->set_pager_itemspage(40);
}
- $r = q("SELECT `item`.`id` AS `item_id` FROM `item`
- LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s AND `contact`.`self`
+ $r = q("SELECT `item`.`id` AS `item_id` FROM `item` %s
WHERE %s AND `item`.`uid` = %d AND `item`.`type` = 'note'
AND `item`.`id` = `item`.`parent` AND NOT `item`.`wall`
$sql_extra
ORDER BY `item`.`created` DESC LIMIT %d ,%d ",
- contact_condition(), item_condition(),
+ item_joins(), item_condition(),
intval(local_user()),
intval($a->pager['start']),
intval($a->pager['itemspage'])
$parents_arr[] = $rr['item_id'];
$parents_str = implode(', ', $parents_arr);
- $r = q("SELECT %s, %s FROM `item`
- LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s
+ $r = q("SELECT %s FROM `item` %s
WHERE %s AND `item`.`uid` = %d AND `item`.`parent` IN (%s)
$sql_extra
ORDER BY `parent` DESC, `gravity` ASC, `item`.`id` ASC ",
- item_fieldlist(), contact_fieldlist(),
- contact_condition(), item_condition(),
+ item_fieldlists(), item_joins(), item_condition(),
intval(local_user()),
dbesc($parents_str)
);
$parents_arr[] = $rr['item_id'];
$parents_str = implode(', ', $parents_arr);
- $items = q("SELECT %s, %s FROM `item`
- INNER JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s
- WHERE %s AND `item`.`uid` = %d
+ $items = q(item_query()." AND `item`.`uid` = %d
AND `item`.`parent` IN (%s)
$sql_extra ",
- item_fieldlist(), contact_fieldlist(),
- contact_condition(), item_condition(),
intval($a->profile['profile_uid']),
dbesc($parents_str)
);
if($tag) {
logger("Start tag search for '".$search."'", LOGGER_DEBUG);
- $r = q("SELECT STRAIGHT_JOIN %s, %s
+ $r = q("SELECT %s
FROM `term`
- INNER JOIN `item` ON `item`.`id`=`term`.`oid`
- INNER JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s
+ STRAIGHT_JOIN `item` ON `item`.`id`=`term`.`oid` %s
WHERE %s AND (`term`.`uid` = 0 OR (`term`.`uid` = %d AND NOT `term`.`global`)) AND `term`.`otype` = %d AND `term`.`type` = %d AND `term`.`term` = '%s'
ORDER BY term.created DESC LIMIT %d , %d ",
- item_fieldlist(), contact_fieldlist(),
- contact_condition(), item_condition(),
+ item_fieldlists(), item_joins(), item_condition(),
intval(local_user()),
intval(TERM_OBJ_POST), intval(TERM_HASHTAG), dbesc(protect_sprintf($search)),
intval($a->pager['start']), intval($a->pager['itemspage']));
$sql_extra = sprintf(" AND `item`.`body` REGEXP '%s' ", dbesc(protect_sprintf(preg_quote($search))));
}
- $r = q("SELECT STRAIGHT_JOIN %s, %s
- FROM `item`
- INNER JOIN `contact` ON `contact`.`id` = `item`.`contact-id` AND %s
+
+ $r = q("SELECT %s
+ FROM `item` %s
WHERE %s AND (`item`.`uid` = 0 OR (`item`.`uid` = %s AND NOT `item`.`global`))
$sql_extra
GROUP BY `item`.`uri` ORDER BY `item`.`id` DESC LIMIT %d , %d",
- item_fieldlist(), contact_fieldlist(),
- contact_condition(), item_condition(),
+ item_fieldlists(), item_joins(), item_condition(),
intval(local_user()),
intval($a->pager['start']), intval($a->pager['itemspage']));
}
else
$profile_link = zrl($profile_link);
- // Don't rely on the author-avatar. It is better to use the data from the contact table
- $author_contact = get_contact_details_by_url($item['author-link'], $conv->get_profile_owner());
- if ($author_contact["thumb"])
- $profile_avatar = $author_contact["thumb"];
- else
- $profile_avatar = $item['author-avatar'];
+ if (!isset($item['author-thumb'])) {
+ $author_contact = get_contact_details_by_url($item['author-link'], $conv->get_profile_owner());
+ if ($author_contact["thumb"])
+ $item['author-thumb'] = $author_contact["thumb"];
+ else
+ $item['author-thumb'] = $item['author-avatar'];
+ }
+
+ if (!isset($item['owner-thumb'])) {
+ $owner_contact = get_contact_details_by_url($item['owner-link'], $conv->get_profile_owner());
+ if ($owner_contact["thumb"])
+ $item['owner-thumb'] = $owner_contact["thumb"];
+ else
+ $item['owner-thumb'] = $item['owner-avatar'];
+ }
$locate = array('location' => $item['location'], 'coord' => $item['coord'], 'html' => '');
call_hooks('render_location',$locate);
'profile_url' => $profile_link,
'item_photo_menu' => item_photo_menu($item),
'name' => $name_e,
- 'thumb' => $a->remove_baseurl(proxy_url($profile_avatar, false, PROXY_SIZE_THUMB)),
+ 'thumb' => $a->remove_baseurl(proxy_url($item['author-thumb'], false, PROXY_SIZE_THUMB)),
'osparkle' => $osparkle,
'sparkle' => $sparkle,
'title' => $title_e,
'indent' => $indent,
'shiny' => $shiny,
'owner_url' => $this->get_owner_url(),
- 'owner_photo' => proxy_url($this->get_owner_photo(), false, PROXY_SIZE_THUMB),
+ 'owner_photo' => $a->remove_baseurl(proxy_url($item['owner-thumb'], false, PROXY_SIZE_THUMB)),
'owner_name' => htmlentities($owner_name_e),
'plink' => get_plink($item),
'edpost' => ((feature_enabled($conv->get_profile_owner(),'edit_posts')) ? $edpost : ''),
<?php
-define('UPDATE_VERSION' , 1196);
+define('UPDATE_VERSION' , 1197);
/**
*
<dl class="entity_uid">
<dt>Uid</dt>
<dd>
- <span class="uid">{{$diaspora.guid}}</span>
+ <span class="uid p-uid">{{$diaspora.guid}}</span>
</dd>
</dl>
<dl class='entity_nickname'>
<dt>Nickname</dt>
<dd>
- <span class="nickname">{{$diaspora.nickname}}</span>
+ <span class="nickname p-nickname">{{$diaspora.nickname}}</span>
</dd>
</dl>
<dl class='entity_full_name'>
<dt>Full_name</dt>
<dd>
- <span class='fn'>{{$diaspora.fullname}}</span>
+ <span class='fn p-name'>{{$diaspora.fullname}}</span>
</dd>
</dl>
<dl class="entity_searchable">
<dl class='entity_first_name'>
<dt>First_name</dt>
<dd>
- <span class='given_name'>{{$diaspora.firstname}}</span>
+ <span class='given_name p-given-name'>{{$diaspora.firstname}}</span>
</dd>
</dl>
<dl class='entity_family_name'>
<dt>Family_name</dt>
<dd>
- <span class='family_name'>{{$diaspora.lastname}}</span>
+ <span class='family_name p-family-name'>{{$diaspora.lastname}}</span>
</dd>
</dl>
<dl class="entity_url">
<dt>Url</dt>
<dd>
- <a id="pod_location" class="url" rel="me" href="{{$diaspora.podloc}}/">{{$diaspora.podloc}}/</a>
+ <a id="pod_location" href="{{$diaspora.podloc}}/">{{$diaspora.podloc}}/</a>
</dd>
</dl>
<dl class="entity_photo">
<dt>Photo</dt>
<dd>
- <img class="photo avatar" height="300" width="300" src="{{$diaspora.photo300}}">
+ <img class="photo u-photo avatar" height="300" width="300" src="{{$diaspora.photo300}}">
</dd>
</dl>
<dl class="entity_photo_medium">
<dt>Photo_medium</dt>
<dd>
- <img class="photo avatar" height="100" width="100" src="{{$diaspora.photo100}}">
+ <img class="photo u-photo avatar" height="100" width="100" src="{{$diaspora.photo100}}">
</dd>
</dl>
<dl class="entity_photo_small">
<dt>Photo_small</dt>
<dd>
- <img class="photo avatar" height="50" width="50" src="{{$diaspora.photo50}}">
+ <img class="photo u-photo avatar" height="50" width="50" src="{{$diaspora.photo50}}">
</dd>
</dl>
</div>
--- /dev/null
+
+<div id="sidebar-events" class="widget">
+ <h3>{{$etitle}}</h3>
+
+ <ul class="sidebar-calendar-export-ul">
+ <li role="menuitem" class="sidebar-calendar-export-li"><a href="{{$baseurl}}/cal/{{$user}}/export/ical" >{{$export_ical}}</a></li>
+ <li role="menuitem" class="sidebar-calendar-export-li"><a href="{{$baseurl}}/cal/{{$user}}/export/csv" >{{$export_csv}}</a></li>
+ </ul>
+</div>
{{if $profile.network_name}}<dl class="network"><dt class="network-label">{{$network}}</dt><dd class="x-network">{{$profile.network_name}}</dd></dl>{{/if}}
{{if $location}}
<dl class="location"><dt class="location-label">{{$location}}</dt>
- <dd class="adr">
+ <dd class="adr h-adr">
{{if $profile.address}}<div class="street-address p-street-address">{{$profile.address}}</div>{{/if}}
<span class="city-state-zip">
<span class="locality p-locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
</dl>
{{/if}}
- {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="x-gender p-gender-identity">{{$profile.gender}}</dd></dl>{{/if}}
+ {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="p-gender">{{$profile.gender}}</dd></dl>{{/if}}
{{if $profile.pubkey}}<div class="key u-key" style="display:none;">{{$profile.pubkey}}</div>{{/if}}
-<div class="vcard">
- <div class="fn">{{$name}}</div>
+<div class="vcard h-card">
+ <div class="fn p-name">{{$name}}</div>
{{if $addr}}<div class="p-addr">{{$addr}}</div>{{/if}}
- {{if $pdesc}}<div class="title">{{$pdesc}}</div>{{/if}}
+ {{if $pdesc}}<div class="title p-job-title">{{$pdesc}}</div>{{/if}}
{{if $url}}
- <div id="profile-photo-wrapper"><a href="{{$url}}"><img class="vcard-photo photo" style="width: 175px; height: 175px;" src="{{$photo}}" alt="{{$name}}" /></a></div>
+ <div id="profile-photo-wrapper"><a href="{{$url}}"><img class="vcard-photo photo u-photo" style="width: 175px; height: 175px;" src="{{$photo}}" alt="{{$name}}" /></a></div>
{{else}}
- <div id="profile-photo-wrapper"><img class="vcard-photo photo" style="width: 175px; height: 175px;" src="{{$photo}}" alt="{{$name}}" /></div>
+ <div id="profile-photo-wrapper"><img class="vcard-photo photo u-photo" style="width: 175px; height: 175px;" src="{{$photo}}" alt="{{$name}}" /></div>
{{/if}}
{{if $account_type}}<div class="account-type">{{$account_type}}</div>{{/if}}
{{if $network_name}}<dl class="network"><dt class="network-label">{{$network}}</dt><dd class="x-network">{{$network_name}}</dd></dl>{{/if}}
</div>
<div id="collapsed-comments-{{$item.id}}" class="collapsed-comments" style="display: none;">
{{/if}}
-<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}}">
+<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}} {{if $item.toplevel}} h-entry {{else}} u-comment h-cite {{/if}}">
<a name="{{$item.id}}" ></a>
<div class="wall-item-outside-wrapper {{$item.indent}}{{$item.previewing}}{{if $item.owner_url}} wallwall{{/if}}" id="wall-item-outside-wrapper-{{$item.id}}" >
<div class="wall-item-content-wrapper {{$item.indent}} {{$item.shiny}}" id="wall-item-content-wrapper-{{$item.id}}" >
</div>
<div class="wall-item-arrowphoto-wrapper" ><img src="images/larrow.gif" alt="{{$item.wall}}" /></div>
{{/if}}
- <div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}}" id="wall-item-photo-wrapper-{{$item.id}}"
+ <div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}} p-author h-card" 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|escape:'html'}}" 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>
+ <a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle|escape:'html'}}" class="wall-item-photo-link u-url" id="wall-item-photo-link-{{$item.id}}">
+ <img src="{{$item.thumb}}" class="wall-item-photo{{$item.sparkle}} u-photo p-name" 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>
</div>
<div class="wall-item-author">
<a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle|escape:'html'}}" class="wall-item-name-link"><span class="wall-item-name{{$item.sparkle}}" id="wall-item-name-{{$item.id}}" >{{$item.name}}</span></a>{{if $item.owner_url}} {{$item.to}} <a href="{{$item.owner_url}}" target="redir" title="{{$item.olinktitle|escape:'html'}}" 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}}{{/if}}<br />
- <div class="wall-item-ago" id="wall-item-ago-{{$item.id}}" title="{{$item.localtime|escape:'html'}}">{{$item.ago}}</div>
+ <div class="wall-item-ago" id="wall-item-ago-{{$item.id}}" title="{{$item.localtime|escape:'html'}}"><time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time></div>
</div>
<div class="wall-item-content" id="wall-item-content-{{$item.id}}" >
- <div class="wall-item-title" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
+ <div class="wall-item-title p-name" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
<div class="wall-item-title-end"></div>
- <div class="wall-item-body" id="wall-item-body-{{$item.id}}" >{{$item.body}}
+ <div class="wall-item-body" id="wall-item-body-{{$item.id}}" ><span class="e-content">{{$item.body}}<span>
<div class="body-tag">
{{foreach $item.tags as $tag}}
<span class='tag'>{{$tag}}</span>
{{/foreach}}
</div>
{{if $item.has_cats}}
- <div class="categorytags"><span>{{$item.txt_cats}} {{foreach $item.categories as $cat}}{{$cat.name}}{{if $cat.removeurl}} <a href="{{$cat.removeurl}}" title="{{$remove|escape:'html'}}">[{{$remove}}]</a>{{/if}} {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
+ <div class="categorytags"><span>{{$item.txt_cats}} {{foreach $item.categories as $cat}}<span class="p-category">{{$cat.name}}</span>{{if $cat.removeurl}} <a href="{{$cat.removeurl}}" title="{{$remove|escape:'html'}}">[{{$remove}}]</a>{{/if}} {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
{{if $item.has_folders}}
- <div class="filesavetags"><span>{{$item.txt_folders}} {{foreach $item.folders as $cat}}{{$cat.name}}{{if $cat.removeurl}} <a href="{{$cat.removeurl}}" title="{{$remove|escape:'html'}}">[{{$remove}}]</a>{{/if}}{{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
+ <div class="filesavetags"><span>{{$item.txt_folders}} {{foreach $item.folders as $cat}}<span class="p-category">{{$cat.name}}</span>{{if $cat.removeurl}} <a href="{{$cat.removeurl}}" title="{{$remove|escape:'html'}}">[{{$remove}}]</a>{{/if}}{{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
</div>
</div>
{{/if}}
{{if $item.plink}}
- <div class="wall-item-links-wrapper"><a href="{{$item.plink.href}}" title="{{$item.plink.title|escape:'html'}}" target="_blank" class="icon remote-link{{$item.sparkle}}"></a></div>
+ <div class="wall-item-links-wrapper"><a href="{{$item.plink.href}}" title="{{$item.plink.title|escape:'html'}}" target="_blank" class="icon remote-link{{$item.sparkle}} u-url"></a></div>
{{/if}}
{{if $item.edpost}}
<a class="editpost icon pencil" href="{{$item.edpost.0}}" title="{{$item.edpost.1|escape:'html'}}"></a>
-<div class="vcard">
+<div class="vcard h-card">
- <div class="fn label">{{$profile.name}}</div>
+ <div class="fn label p-name">{{$profile.name}}</div>
{{if $pdesc}}<div class="title">{{$profile.pdesc}}</div>{{/if}}
- <div id="profile-photo-wrapper"><img class="photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}"></div>
+ <div id="profile-photo-wrapper"><img class="photo u-photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}"></div>
{{if $location}}
<dl class="location"><dt class="location-label">{{$location}}</dt>
- <dd class="adr">
- {{if $profile.address}}<div class="street-address">{{$profile.address}}</div>{{/if}}
+ <dd class="adr h-adr">
+ {{if $profile.address}}<div class="street-address p-street-address">{{$profile.address}}</div>{{/if}}
<span class="city-state-zip">
- <span class="locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
- <span class="region">{{$profile.region}}</span>
- <span class="postal-code">{{$profile.postal_code}}</span>
+ <span class="locality p-locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
+ <span class="region p-region">{{$profile.region}}</span>
+ <span class="postal-code p-postal-code">{{$profile.postal_code}}</span>
</span>
- {{if $profile.country_name}}<span class="country-name">{{$profile.country_name}}</span>{{/if}}
+ {{if $profile.country_name}}<span class="country-name p-country-name">{{$profile.country_name}}</span>{{/if}}
</dd>
</dl>
{{/if}}
- {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="x-gender">{{$profile.gender}}</dd></dl>{{/if}}
+ {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="p-gender">{{$profile.gender}}</dd></dl>{{/if}}
{{if $profile.pubkey}}<div class="key" style="display:none;">{{$profile.pubkey}}</div>{{/if}}
{{if $marital}}<dl class="marital"><dt class="marital-label"><span class="heart">♥</span>{{$marital}}</dt><dd class="marital-text">{{$profile.marital}}</dd></dl>{{/if}}
- {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
+ {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url u-url"><a href="{{$profile.homepage}}" class="u-url" rel="me" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
{{include file="diaspora_vcard.tpl"}}
-<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}}">
+<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}} {{if $item.toplevel}} h-entry {{else}} u-comment h-cite {{/if}}">
<a name="{{$item.id}}" ></a>
{{*<!--<div class="wall-item-outside-wrapper {{$item.indent}}{{$item.previewing}} wallwall" id="wall-item-outside-wrapper-{{$item.id}}" >-->*}}
<div class="wall-item-content-wrapper {{$item.indent}}" id="wall-item-content-wrapper-{{$item.id}}" >
onmouseover="if (typeof t{{$item.id}} != 'undefined') clearTimeout(t{{$item.id}}); openMenu('wall-item-photo-menu-button-{{$item.id}}')"
onmouseout="t{{$item.id}}=setTimeout('closeMenu(\'wall-item-photo-menu-button-{{$item.id}}\'); closeMenu(\'wall-item-photo-menu-{{$item.id}}\');',200)">-->*}}
{{*<!--<div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}}" id="wall-item-photo-wrapper-{{$item.id}}">-->*}}
- <a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="wall-item-photo-link" id="wall-item-photo-link-{{$item.id}}">
- <img src="{{$item.thumb}}" class="wall-item-photo{{$item.sparkle}}" id="wall-item-photo-{{$item.id}}" style="height: 80px; width: 80px;" alt="{{$item.name}}" onError="this.src='../../../images/person-48.jpg';" />
+ <span class="p-author h-card">
+ <a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="wall-item-photo-link u-url" id="wall-item-photo-link-{{$item.id}}">
+ <img src="{{$item.thumb}}" class="wall-item-photo{{$item.sparkle}} p-name u-photo" id="wall-item-photo-{{$item.id}}" style="height: 80px; width: 80px;" alt="{{$item.name}}" onError="this.src='../../../images/person-48.jpg';" />
</a>
+ </span>
{{*<!--<span onclick="openClose('wall-item-photo-menu-{{$item.id}}');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-{{$item.id}}">menu</span>
<div class="wall-item-photo-menu" id="wall-item-photo-menu-{{$item.id}}">
<ul class="wall-item-photo-menu" id="wall-item-photo-menu-{{$item.id}}">
</div>
{{*<!--<div class="wall-item-author">-->*}}
<a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="wall-item-name-link"><span class="wall-item-name{{$item.sparkle}}" id="wall-item-name-{{$item.id}}" >{{$item.name}}</span></a>{{if $item.owner_url}} {{$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}}{{/if}}<br />
- <div class="wall-item-ago" id="wall-item-ago-{{$item.id}}">{{$item.ago}}</div>
+ <div class="wall-item-ago" id="wall-item-ago-{{$item.id}}"><time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time></div>
{{*<!--</div>-->*}}
<div class="wall-item-content" id="wall-item-content-{{$item.id}}" >
- <div class="wall-item-title" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
+ <div class="wall-item-title p-name" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
{{*<!--<div class="wall-item-title-end"></div>-->*}}
- <div class="wall-item-body" id="wall-item-body-{{$item.id}}" >{{$item.body}}
+ <div class="wall-item-body" id="wall-item-body-{{$item.id}}" ><span class="e-content">{{$item.body}}</span>
{{*<!--<div class="body-tag">-->*}}
{{foreach $item.tags as $tag}}
<span class='body-tag tag'>{{$tag}}</span>
{{/foreach}}
{{*<!--</div>-->*}}
{{if $item.has_cats}}
- <div class="categorytags">{{$item.txt_cats}} {{foreach $item.categories as $cat}}{{$cat.name}} <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
+ <div class="categorytags">{{$item.txt_cats}} {{foreach $item.categories as $cat}}<span class="p-category">{{$cat.name}}</span> <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
{{if $item.has_folders}}
- <div class="filesavetags">{{$item.txt_folders}} {{foreach $item.folders as $cat}}{{$cat.name}} <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
+ <div class="filesavetags">{{$item.txt_folders}} {{foreach $item.folders as $cat}}<span class="p-category">{{$cat.name}}</span> <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
</div>
</div>
{{/if}}
{{if $item.plink}}
- {{*<!--<div class="wall-item-links-wrapper">-->*}}<a href="{{$item.plink.href}}" title="{{$item.plink.title}}" target="external-link" class="wall-item-links-wrapper icon remote-link{{$item.sparkle}}"></a>{{*<!--</div>-->*}}
+ {{*<!--<div class="wall-item-links-wrapper">-->*}}<a href="{{$item.plink.href}}" title="{{$item.plink.title}}" target="external-link" class="wall-item-links-wrapper icon remote-link{{$item.sparkle}} u-url"></a>{{*<!--</div>-->*}}
{{/if}}
{{if $item.edpost}}
<a class="editpost icon pencil" href="{{$item.edpost.0}}" title="{{$item.edpost.1}}"></a>
</dl>
{{/if}}
- {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="x-gender">{{$profile.gender}}</dd></dl>{{/if}}
+ {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="p-gender">{{$profile.gender}}</dd></dl>{{/if}}
</div>
<div class="directory-detailscolumn-wrapper" id="directory-detailscolumn2-wrapper-{{$id}}">
{{if $marital}}<dl class="marital"><dt class="marital-label"><span class="heart">♥</span>{{$marital}}</dt><dd class="marital-text">{{$profile.marital}}</dd></dl>{{/if}}
-<div class="vcard">
+<div class="vcard h-card">
<div class="tool">
- <div class="fn label">{{$profile.name}}</div>
+ <div class="fn label p-name">{{$profile.name}}</div>
{{if $profile.edit}}
<div class="action">
<a class="icon s16 edit ttright" href="#" rel="#profiles-menu" title="{{$profile.edit.3}}"><span>{{$profile.edit.1}}</span></a>
- <div id="profile-photo-wrapper"><img class="photo" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}" /></div>
+ <div id="profile-photo-wrapper"><img class="photo u-photo" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}" /></div>
{{if $pdesc}}<div class="title">{{$profile.pdesc}}</div>{{/if}}
{{if $location}}
<dl class="location"><dt class="location-label">{{$location}}</dt><br>
- <dd class="adr">
- {{if $profile.address}}<div class="street-address">{{$profile.address}}</div>{{/if}}
+ <dd class="adr h-adr">
+ {{if $profile.address}}<div class="street-address p-street-address">{{$profile.address}}</div>{{/if}}
<span class="city-state-zip">
- <span class="locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
- <span class="region">{{$profile.region}}</span>
- <span class="postal-code">{{$profile.postal_code}}</span>
+ <span class="locality p-locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
+ <span class="region p-region">{{$profile.region}}</span>
+ <span class="postal-code p-postal-code">{{$profile.postal_code}}</span>
</span>
- {{if $profile.country_name}}<span class="country-name">{{$profile.country_name}}</span>{{/if}}
+ {{if $profile.country_name}}<span class="country-name p-country-name">{{$profile.country_name}}</span>{{/if}}
</dd>
</dl>
{{/if}}
- {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="x-gender">{{$profile.gender}}</dd></dl>{{/if}}
+ {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="p-gender">{{$profile.gender}}</dd></dl>{{/if}}
{{if $profile.pubkey}}<div class="key" style="display:none;">{{$profile.pubkey}}</div>{{/if}}
{{if $marital}}<dl class="marital"><dt class="marital-label"><span class="heart">♥</span>{{$marital}}</dt><dd class="marital-text">{{$profile.marital}}</dd></dl>{{/if}}
- {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
+ {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" class="u-url" rel="me" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
{{include file="diaspora_vcard.tpl"}}
</div>
<div id="collapsed-comments-{{$item.id}}" class="collapsed-comments" style="display: none;">
{{/if}}
-<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}}">
+<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}} {{if $item.toplevel}} h-entry {{else}} u-comment h-cite {{/if}}">
{{if $item.indent}}{{else}}
<div class="wall-item-decor">
<img id="like-rotator-{{$item.id}}" class="like-rotator" src="images/rotator.gif" alt="{{$item.wait}}" title="{{$item.wait}}" style="display: none;" />
</div>
</div>
<div class="wall-item-actions-author">
- <a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="wall-item-name-link"><span class="wall-item-name{{$item.sparkle}}">{{$item.name}}</span></a>
+ <span class="p-author h-card">
+ <a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="wall-item-name-link u-url"><span class="wall-item-name{{$item.sparkle}} p-name">{{$item.name}}</span></a>
+ </span>
<span class="wall-item-ago">-
- {{if $item.plink}}<a class="link{{$item.sparkle}}" title="{{$item.plink.title}}" href="{{$item.plink.href}}" style="color: #999">{{$item.ago}}</a>{{else}} {{$item.ago}} {{/if}}
+ {{if $item.plink}}<a class="link{{$item.sparkle}} u-url" title="{{$item.plink.title}}" href="{{$item.plink.href}}" style="color: #999"><time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time></a>{{else}} <time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time> {{/if}}
{{if $item.lock}} - <span class="fakelink" style="color: #999" onclick="lockview(event,{{$item.id}});">{{$item.lock}}</span> {{/if}}
</span>
</div>
<div class="wall-item-content">
- {{if $item.title}}<h2><a href="{{$item.plink.href}}">{{$item.title}}</a></h2>{{/if}}
- {{$item.body}}
+ {{if $item.title}}<h2><a href="{{$item.plink.href}}" class="p-name">{{$item.title}}</a></h2>{{/if}}
+ <span class="e-content {{if !$item.title}}p-name{{/if}}">{{$item.body}}</span>
{{if $item.has_cats}}
- <div class="categorytags"><span>{{$item.txt_cats}} {{foreach $item.categories as $cat}}{{$cat.name}} <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
+ <div class="categorytags"><span>{{$item.txt_cats}} {{foreach $item.categories as $cat}}<span class="p-category">{{$cat.name}}</span> <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
{{if $item.has_folders}}
- <div class="filesavetags"><span>{{$item.txt_folders}} {{foreach $item.folders as $cat}}{{$cat.name}} <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
+ <div class="filesavetags"><span>{{$item.txt_folders}} {{foreach $item.folders as $cat}}<span class="p-category">{{$cat.name}}</span> <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
</div>
-<div class="vcard">
+<div class="vcard h-card">
{{if $profile.edit}}
<div class="action">
</div>
{{/if}}
- <div class="fn label">{{$profile.name}}</div>
+ <div class="fn label p-name">{{$profile.name}}</div>
{{if $pdesc}}
<div class="title">{{$profile.pdesc}}</div>
{{/if}}
<div id="profile-photo-wrapper">
- <img class="photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}" />
+ <img class="photo u-photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}" />
</div>
{{if $location}}
<div class="location">
<span class="location-label">{{$location}}</span>
- <div class="adr">
+ <div class="adr h-adr">
{{if $profile.address}}
- <div class="street-address">{{$profile.address}}</div>{{/if}}
+ <div class="street-address p-street-address">{{$profile.address}}</div>{{/if}}
<span class="city-state-zip">
- <span class="locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
- <span class="region">{{$profile.region}}</span>
- <span class="postal-code">{{$profile.postal_code}}</span>
+ <span class="locality p-locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
+ <span class="region p-region">{{$profile.region}}</span>
+ <span class="postal-code p-postal-code">{{$profile.postal_code}}</span>
</span>
- {{if $profile.country_name}}<span class="country-name">{{$profile.country_name}}</span>{{/if}}
+ {{if $profile.country_name}}<span class="country-name p-country-name">{{$profile.country_name}}</span>{{/if}}
</div>
</div>
{{/if}}
{{if $gender}}
<div class="mf">
<span class="gender-label">{{$gender}}</span>
- <span class="x-gender">{{$profile.gender}}</span>
+ <span class="p-gender">{{$profile.gender}}</span>
</div>
{{/if}}
{{if $homepage}}
<div class="homepage">
<span class="homepage-label">{{$homepage}}</span>
- <span class="homepage-url"><a href="{{$profile.homepage}}"
+ <span class="homepage-url"><a href="{{$profile.homepage}}" class="u-url" rel="me"
target="external-link">{{$profile.homepage}}</a></span>
</div>{{/if}}
</div>
<div id="collapsed-comments-{{$item.id}}" class="collapsed-comments" style="display: none;">
{{/if}}
-<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}}">
+<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}} {{if $item.toplevel}} h-entry {{else}} u-comment h-cite {{/if}}">
<a name="{{$item.id}}" ></a>
<div class="wall-item-outside-wrapper {{$item.indent}} {{$item.shiny}}{{$item.previewing}}{{if $item.owner_url}} wallwall{{/if}}" id="wall-item-outside-wrapper-{{$item.id}}" >
<div class="wall-item-content-wrapper {{$item.indent}} {{$item.shiny}}" id="wall-item-content-wrapper-{{$item.id}}" >
</div>
<div class="wall-item-arrowphoto-wrapper" ><img src="images/larrow.gif" alt="{{$item.wall}}" /></div>
{{/if}}
- <div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}}" id="wall-item-photo-wrapper-{{$item.id}}"
+ <div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}} p-author h-card" 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>
+ <a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="wall-item-photo-link u-url" id="wall-item-photo-link-{{$item.id}}">
+ <img src="{{$item.thumb}}" class="wall-item-photo{{$item.sparkle}} p-name u-photo" 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>
<a href="{{$item.profile_url}}" title="{{$item.linktitle}}" class="wall-item-name-link"><span class="wall-item-name{{$item.sparkle}}" id="wall-item-name-{{$item.id}}">{{$item.name}}</span></a>
</div>
<div class="wall-item-ago" id="wall-item-ago-{{$item.id}}">
- {{$item.ago}}
+ <time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time>
</div>
</div>
<div class="wall-item-tools" id="wall-item-tools-{{$item.id}}">
<li class="wall-item-filer-wrapper"><a href="#" id="filer-{{$item.id}}" onclick="itemFiler({{$item.id}}); return false;" class="filer-item icon file-as" title="{{$item.star.filer}}"></a></li>
{{/if}}
{{if $item.plink}}
- <li class="wall-item-links-wrapper{{$item.sparkle}}"><a href="{{$item.plink.href}}" title="{{$item.plink.title}}" target="external-link" class="icon remote-link"></a></li>
+ <li class="wall-item-links-wrapper{{$item.sparkle}}"><a href="{{$item.plink.href}}" title="{{$item.plink.title}}" target="external-link" class="icon remote-link u-url"></a></li>
{{/if}}
{{if $item.edpost}}
<li><a class="editpost icon pencil" href="{{$item.edpost.0}}" title="{{$item.edpost.1}}"></a></li>
<div class="wall-item-delete-end"></div>
</div>
<div class="wall-item-content" id="wall-item-content-{{$item.id}}">
- <div class="wall-item-title" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
+ <div class="wall-item-title p-name" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
<div class="wall-item-title-end"></div>
<div class="wall-item-body" id="wall-item-body-{{$item.id}}">
- {{$item.body}}
+ <span class="e-content">{{$item.body}}</span>
<div class="body-tag">
{{foreach $item.tags as $tag}}
<span class="tag">{{$tag}}</span>
{{/foreach}}
</div>
{{if $item.has_cats}}
- <div class="categorytags"><span>{{$item.txt_cats}} {{foreach $item.categories as $cat}}{{$cat.name}} <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
+ <div class="categorytags"><span>{{$item.txt_cats}} {{foreach $item.categories as $cat}}<span class="p-category">{{$cat.name}}</span> <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
{{if $item.has_folders}}
- <div class="filesavetags"><span>{{$item.txt_folders}} {{foreach $item.folders as $cat}}{{$cat.name}} <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
+ <div class="filesavetags"><span>{{$item.txt_folders}} {{foreach $item.folders as $cat}}<span class="p-category">{{$cat.name}}</span> <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
-<div class="vcard">
+<div class="vcard h-card">
- <div class="fn label">{{$profile.name}}</div>
+ <div class="fn label p-name">{{$profile.name}}</div>
{{if $profile.addr}}<div class="p-addr">{{$profile.addr}}</div>{{/if}}
{{if $profile.pdesc}}<div class="title">{{$profile.pdesc}}</div>{{/if}}
- <div id="profile-photo-wrapper"><img class="photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}"></div>
+ <div id="profile-photo-wrapper"><img class="photo u-photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}"></div>
{{if $account_type}}<div class="account-type">{{$account_type}}</div>{{/if}}
{{if $location}}
<dl class="location"><dt class="location-label">{{$location}}</dt>
- <dd class="adr">
- {{if $profile.address}}<div class="street-address">{{$profile.address}}</div>{{/if}}
+ <dd class="adr h-adr">
+ {{if $profile.address}}<div class="street-address p-street-address">{{$profile.address}}</div>{{/if}}
<span class="city-state-zip">
- <span class="locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
- <span class="region">{{$profile.region}}</span>
- <span class="postal-code">{{$profile.postal_code}}</span>
+ <span class="locality p-locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
+ <span class="region p-region">{{$profile.region}}</span>
+ <span class="postal-code p-postal-code">{{$profile.postal_code}}</span>
</span>
- {{if $profile.country_name}}<span class="country-name">{{$profile.country_name}}</span>{{/if}}
+ {{if $profile.country_name}}<span class="country-name p-country-name">{{$profile.country_name}}</span>{{/if}}
</dd>
</dl>
{{/if}}
- {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="x-gender">{{$profile.gender}}</dd></dl>{{/if}}
+ {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="p-gender">{{$profile.gender}}</dd></dl>{{/if}}
{{if $profile.pubkey}}<div class="key" style="display:none;">{{$profile.pubkey}}</div>{{/if}}
{{if $marital}}<dl class="marital"><dt class="marital-label"><span class="heart">♥</span>{{$marital}}</dt><dd class="marital-text">{{$profile.marital}}</dd></dl>{{/if}}
- {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
+ {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" class="u-url" rel="me" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
{{include file="diaspora_vcard.tpl"}}
-<div class="vcard">
+<div class="vcard h-card">
- <div class="fn label">{{$profile.name}}</div>
+ <div class="fn label p-name">{{$profile.name}}</div>
{{if $pdesc}}<div class="title">{{$profile.pdesc}}</div>{{/if}}
- <div id="profile-photo-wrapper"><img class="photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}"></div>
+ <div id="profile-photo-wrapper"><img class="photo u-photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}"></div>
{{if $location}}
<dl class="location"><dt class="location-label">{{$location}}</dt>
- <dd class="adr">
- {{if $profile.address}}<div class="street-address">{{$profile.address}}</div>{{/if}}
+ <dd class="adr h-adr">
+ {{if $profile.address}}<div class="street-address p-street-address">{{$profile.address}}</div>{{/if}}
<span class="city-state-zip">
- <span class="locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
- <span class="region">{{$profile.region}}</span>
- <span class="postal-code">{{$profile.postal_code}}</span>
+ <span class="locality p-locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
+ <span class="region p-region">{{$profile.region}}</span>
+ <span class="postal-code p-postal-code">{{$profile.postal_code}}</span>
</span>
- {{if $profile.country_name}}<span class="country-name">{{$profile.country_name}}</span>{{/if}}
+ {{if $profile.country_name}}<span class="country-name p-country-name">{{$profile.country_name}}</span>{{/if}}
</dd>
</dl>
{{/if}}
- {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="x-gender">{{$profile.gender}}</dd></dl>{{/if}}
+ {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="p-gender">{{$profile.gender}}</dd></dl>{{/if}}
{{if $profile.pubkey}}<div class="key" style="display:none;">{{$profile.pubkey}}</div>{{/if}}
{{if $marital}}<dl class="marital"><dt class="marital-label"><span class="heart">♥</span>{{$marital}}</dt><dd class="marital-text">{{$profile.marital}}</dd></dl>{{/if}}
- {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
+ {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" class="u-url" rel="me" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
{{include file="diaspora_vcard.tpl"}}
{{if $gender}}
<div class="mf detail">
<span class="gender-label icon"><i class="fa fa-venus-mars"></i></span>
- <span class="x-gender p-gender-identity">{{$profile.gender}}</span>
+ <span class="p-gender">{{$profile.gender}}</span>
</div>
{{/if}}
-<div class="vcard widget">
+<div class="vcard widget h-card">
{{if $url}}
- <div id="profile-photo-wrapper" class="thumbnail"><a href="{{$url}}"><img class="vcard-photo photo" src="{{$photo}}" alt="{{$name}}" /></a></div>
+ <div id="profile-photo-wrapper" class="thumbnail"><a class="u-url" href="{{$url}}"><img class="vcard-photo photo u-photo" src="{{$photo}}" alt="{{$name}}" /></a></div>
{{else}}
- <div id="profile-photo-wrapper" class="thumbnail"><img class="vcard-photo photo" src="{{$photo}}" alt="{{$name}}" /></div>
+ <div id="profile-photo-wrapper" class="thumbnail"><img class="vcard-photo photo u-photo" src="{{$photo}}" alt="{{$name}}" /></div>
{{/if}}
{{* The short information which will appended to the second navbar by scrollspy *}}
</div>
<div class="panel-body">
- <div class="fn">{{$name}}</div>
+ <div class="fn p-name">{{$name}}</div>
{{if $addr}}<div class="p-addr">{{$addr}}</div>{{/if}}
{{if $pdesc}}<div class="title">{{$pdesc}}</div>{{/if}}
{{* Use a different div container in dependence max thread-level = 7 *}}
{{if $item.thread_level<7}}
-<div class="wall-item-container {{$item.indent}} {{$item.shiny}} {{$item.network}} thread_level_{{$item.thread_level}} {{if $item.thread_level==1}}panel-body{{/if}}" id="item-{{$item.guid}}"><!-- wall-item-container -->
+<div class="wall-item-container {{$item.indent}} {{$item.shiny}} {{$item.network}} thread_level_{{$item.thread_level}} {{if $item.thread_level==1}}panel-body h-entry{{else}}u-comment h-cite{{/if}}" id="item-{{$item.guid}}"><!-- wall-item-container -->
{{else}}
-<div class="wall-item-container {{$item.indent}} {{$item.shiny}} {{$item.network}} thread_level_7" id="item-{{$item.guid}}">
+<div class="wall-item-container {{$item.indent}} {{$item.shiny}} {{$item.network}} thread_level_7 u-comment h-cite" id="item-{{$item.guid}}">
{{/if}}
<div class="media">
{{* Put addional actions in a top-right dropdown menu *}}
<ul class="dropdown-menu pull-right" role="menu" aria-labelledby="dropdownMenuTools-{{$item.id}}">
{{if $item.plink}} {{*link to the original source of the item *}}
<li role="menuitem">
- <a title="{{$item.plink.title}}" href="{{$item.plink.href}}" class="navicon plink"><i class="fa fa-external-link"></i> {{$item.plink.title}}</a>
+ <a title="{{$item.plink.title}}" href="{{$item.plink.href}}" class="navicon plink u-url"><i class="fa fa-external-link"></i> {{$item.plink.title}}</a>
</li>
{{/if}}
{{* The avatar picture and the photo-menu *}}
<div class="dropdown pull-left"><!-- Dropdown -->
{{if $item.thread_level==1}}
- <div class="hidden-sm hidden-xs contact-photo-wrapper mframe{{if $item.owner_url}} wwfrom{{/if}}">
- <a class="userinfo" id="wall-item-photo-menu-{{$item.id}}" href="{{$item.profile_url}}">
+ <div class="hidden-sm hidden-xs contact-photo-wrapper mframe{{if $item.owner_url}} wwfrom{{/if}} p-author h-card">
+ <a class="userinfo" id="wall-item-photo-menu-{{$item.id}} u-url" href="{{$item.profile_url}}">
<div class="contact-photo-image-wrapper">
- <img src="{{$item.thumb}}" class="contact-photo media-object {{$item.sparkle}}" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" />
+ <img src="{{$item.thumb}}" class="contact-photo media-object {{$item.sparkle}} p-name u-photo" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" />
</div>
</a>
</div>
{{* The avatar picture for comments *}}
{{if $item.thread_level!=1}}
- <div class="contact-photo-wrapper mframe{{if $item.owner_url}} wwfrom{{/if}}">
- <a class="userinfo" id="wall-item-photo-menu-{{$item.id}}" href="{{$item.profile_url}}">
+ <div class="contact-photo-wrapper mframe{{if $item.owner_url}} wwfrom{{/if}} p-author h-card">
+ <a class="userinfo" id="wall-item-photo-menu-{{$item.id}} u-url" href="{{$item.profile_url}}">
<div class="contact-photo-image-wrapper">
- <img src="{{$item.thumb}}" class="contact-photo-xs media-object {{$item.sparkle}}" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" />
+ <img src="{{$item.thumb}}" class="contact-photo-xs media-object {{$item.sparkle}} p-name u-photo" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" />
</div>
</a>
</div>
<div class="additional-info text-muted">
<div id="wall-item-ago-{{$item.id}}" class="wall-item-ago">
- <small><a href="{{$item.plink.orig}}"><span class="time" title="{{$item.localtime}}" data-toggle="tooltip">{{$item.ago}}</span></a></small>
+ <small><a href="{{$item.plink.orig}}"><span class="time" title="{{$item.localtime}}" data-toggle="tooltip"><time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time></span></a></small>
</div>
{{if $item.location}}
{{/if}}
{{if $item.title}}
- <span class="wall-item-title" id="wall-item-title-{{$item.id}}"><h4 class="media-heading"><a href="{{$item.plink.href}}" class="{{$item.sparkle}}">{{$item.title}}</a></h4><br /></span>
+ <span class="wall-item-title" id="wall-item-title-{{$item.id}}"><h4 class="media-heading"><a href="{{$item.plink.href}}" class="{{$item.sparkle}} p-name">{{$item.title}}</a></h4><br /></span>
{{/if}}
- <div class="wall-item-body" id="wall-item-body-{{$item.id}}">{{$item.body}}</div>
+ <div class="wall-item-body e-content {{if !$item.title}}p-name{{/if}}" id="wall-item-body-{{$item.id}}">{{$item.body}}</div>
</div>
<!-- TODO -->
{{/foreach}}
{{foreach $item.folders as $cat}}
- <span class='folder label btn-danger sm'>{{$cat.name}}</a>{{if $cat.removeurl}} (<a href="{{$cat.removeurl}}" title="{{$remove}}">x</a>) {{/if}} </span>
+ <span class='folder label btn-danger sm'><span class="p-category">{{$cat.name}}</span></a>{{if $cat.removeurl}} (<a href="{{$cat.removeurl}}" title="{{$remove}}">x</a>) {{/if}} </span>
{{/foreach}}
{{foreach $item.categories as $cat}}
- <span class='category label btn-success sm'>{{$cat.name}}</a>{{if $cat.removeurl}} (<a href="{{$cat.removeurl}}" title="{{$remove}}">x</a>) {{/if}} </span>
+ <span class='category label btn-success sm'><span class="p-category">{{$cat.name}}</span></a>{{if $cat.removeurl}} (<a href="{{$cat.removeurl}}" title="{{$remove}}">x</a>) {{/if}} </span>
{{/foreach}}
</div>
{{if $item.edited}}<div class="itemedited text-muted">{{$item.edited['label']}} (<span title="{{$item.edited['date']}}">{{$item.edited['relative']}}</span>)</div>{{/if}}
-<div class="vcard">
+<div class="vcard h-card">
- <div class="fn label">{{$profile.name}}</div>
+ <div class="fn label p-name">{{$profile.name}}</div>
{{if $profile.addr}}<div class="p-addr">{{$profile.addr}}</div>{{/if}}
{{if $profile.pdesc}}<div class="title">{{$profile.pdesc}}</div>{{/if}}
- <div id="profile-photo-wrapper"><img class="photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}"></div>
+ <div id="profile-photo-wrapper"><img class="photo u-photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}"></div>
{{if $account_type}}<div class="account-type">{{$account_type}}</div>{{/if}}
{{if $location}}
<dl class="location"><dt class="location-label">{{$location}}</dt>
- <dd class="adr">
- {{if $profile.address}}<div class="street-address">{{$profile.address}}</div>{{/if}}
+ <dd class="adr h-adr">
+ {{if $profile.address}}<div class="street-address p-street-address">{{$profile.address}}</div>{{/if}}
<span class="city-state-zip">
- <span class="locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
- <span class="region">{{$profile.region}}</span>
- <span class="postal-code">{{$profile.postal_code}}</span>
+ <span class="locality p-locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
+ <span class="region p-region">{{$profile.region}}</span>
+ <span class="postal-code p-postal-code">{{$profile.postal_code}}</span>
</span>
- {{if $profile.country_name}}<span class="country-name">{{$profile.country_name}}</span>{{/if}}
+ {{if $profile.country_name}}<span class="country-name p-country-name">{{$profile.country_name}}</span>{{/if}}
</dd>
</dl>
{{/if}}
- {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="x-gender">{{$profile.gender}}</dd></dl>{{/if}}
+ {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="p-gender">{{$profile.gender}}</dd></dl>{{/if}}
{{if $profile.pubkey}}<div class="key" style="display:none;">{{$profile.pubkey}}</div>{{/if}}
{{if $marital}}<dl class="marital"><dt class="marital-label"><span class="heart">♥</span>{{$marital}}</dt><dd class="marital-text">{{$profile.marital}}</dd></dl>{{/if}}
- {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
+ {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" class="u-url" rel="me" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
{{include file="diaspora_vcard.tpl"}}
</div>
<div id="collapsed-comments-{{$item.id}}" class="collapsed-comments" style="display: none;">
{{/if}}
-<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}}">
+<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}} {{if $item.toplevel}} h-entry {{else}} u-comment h-cite {{/if}}">
<a name="{{$item.id}}" ></a>
{{*<!--<div class="wall-item-outside-wrapper {{$item.indent}}{{$item.previewing}} wallwall" id="wall-item-outside-wrapper-{{$item.id}}" >-->*}}
<div class="wall-item-content-wrapper {{$item.indent}}" id="wall-item-content-wrapper-{{$item.id}}" >
onmouseover="if (typeof t{{$item.id}} != 'undefined') clearTimeout(t{{$item.id}}); openMenu('wall-item-photo-menu-button-{{$item.id}}')"
onmouseout="t{{$item.id}}=setTimeout('closeMenu(\'wall-item-photo-menu-button-{{$item.id}}\'); closeMenu(\'wall-item-photo-menu-{{$item.id}}\');',200)">-->*}}
{{*<!--<div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}}" id="wall-item-photo-wrapper-{{$item.id}}">-->*}}
- <a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="wall-item-photo-link" id="wall-item-photo-link-{{$item.id}}">
- <img src="{{$item.thumb}}" class="wall-item-photo{{$item.sparkle}}" id="wall-item-photo-{{$item.id}}" style="height: 48px; width: 48px;" alt="{{$item.name}}" onError="this.src='../../../images/person-48.jpg';" />
+ <span class="p-author h-card">
+ <a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="wall-item-photo-link u-url" id="wall-item-photo-link-{{$item.id}}">
+ <img src="{{$item.thumb}}" class="wall-item-photo{{$item.sparkle}}" id="wall-item-photo-{{$item.id}} p-name u-photo" style="height: 48px; width: 48px;" alt="{{$item.name}}" onError="this.src='../../../images/person-48.jpg';" />
</a>
+ </span>
{{*<!--<span onclick="openClose('wall-item-photo-menu-{{$item.id}}');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-{{$item.id}}">menu</span>
<div class="wall-item-photo-menu" id="wall-item-photo-menu-{{$item.id}}">
<ul class="wall-item-photo-menu" id="wall-item-photo-menu-{{$item.id}}">
{{*<!--<div class="wall-item-author">-->*}}
<a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="wall-item-name-link"><span class="wall-item-name{{$item.sparkle}}" id="wall-item-name-{{$item.id}}" >{{$item.name}}</span></a>{{if $item.owner_url}} {{$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}}{{/if}}<br />
<div class="wall-item-ago" id="wall-item-ago-{{$item.id}}">
- {{if $item.plink}}<a title="{{$item.plink.title}}" href="{{$item.plink.href}}" style="color: #999">{{$item.ago}}</a>{{else}} {{$item.ago}} {{/if}}
+ {{if $item.plink}}<a title="{{$item.plink.title}}" href="{{$item.plink.href}}" class="u-url" style="color: #999"><time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time></a>{{else}} <time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time> {{/if}}
</div>
{{*<!--</div>-->*}}
<div class="wall-item-content" id="wall-item-content-{{$item.id}}" >
- <div class="wall-item-title" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
+ <div class="wall-item-title p-name" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
{{*<!--<div class="wall-item-title-end"></div>-->*}}
- <div class="wall-item-body" id="wall-item-body-{{$item.id}}" >{{$item.body}}
+ <div class="wall-item-body" id="wall-item-body-{{$item.id}}" ><span class="e-content">{{$item.body}}</span>
{{*<!--<div class="body-tag">-->*}}
{{foreach $item.tags as $tag}}
<span class='body-tag tag'>{{$tag}}</span>
{{/foreach}}
{{*<!--</div>-->*}}
{{if $item.has_cats}}
- <div class="categorytags">{{$item.txt_cats}} {{foreach $item.categories as $cat}}{{$cat.name}} <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
+ <div class="categorytags">{{$item.txt_cats}} {{foreach $item.categories as $cat}}<span class="p-category">{{$cat.name}}</span> <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
{{if $item.has_folders}}
- <div class="filesavetags">{{$item.txt_folders}} {{foreach $item.folders as $cat}}{{$cat.name}} <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
+ <div class="filesavetags">{{$item.txt_folders}} {{foreach $item.folders as $cat}}<span class="p-category">{{$cat.name}}</span> <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
</div>
-<div class="vcard">
+<div class="vcard h-card">
- <div class="fn label">{{$profile.name}}</div>
+ <div class="fn label p-name">{{$profile.name}}</div>
{{if $profile.addr}}<div class="p-addr">{{$profile.addr}}</div>{{/if}}
{{if $profile.pdesc}}<div class="title">{{$profile.pdesc}}</div>{{/if}}
- <div id="profile-photo-wrapper"><img class="photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}"></div>
+ <div id="profile-photo-wrapper"><img class="photo u-photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}"></div>
{{if $account_type}}<div class="account-type">{{$account_type}}</div>{{/if}}
{{if $location}}
<dl class="location"><dt class="location-label">{{$location}}</dt>
- <dd class="adr">
- {{if $profile.address}}<div class="street-address">{{$profile.address}}</div>{{/if}}
+ <dd class="adr h-adr">
+ {{if $profile.address}}<div class="street-address p-street-address">{{$profile.address}}</div>{{/if}}
<span class="city-state-zip">
- <span class="locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
- <span class="region">{{$profile.region}}</span>
- <span class="postal-code">{{$profile.postal_code}}</span>
+ <span class="locality p-locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
+ <span class="region p-region">{{$profile.region}}</span>
+ <span class="postal-code p-postal-code">{{$profile.postal_code}}</span>
</span>
- {{if $profile.country_name}}<span class="country-name">{{$profile.country_name}}</span>{{/if}}
+ {{if $profile.country_name}}<span class="country-name p-country-name">{{$profile.country_name}}</span>{{/if}}
</dd>
</dl>
{{/if}}
- {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="x-gender">{{$profile.gender}}</dd></dl>{{/if}}
+ {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="p-gender">{{$profile.gender}}</dd></dl>{{/if}}
{{if $profile.pubkey}}<div class="key" style="display:none;">{{$profile.pubkey}}</div>{{/if}}
{{if $marital}}<dl class="marital"><dt class="marital-label"><span class="heart">♥</span>{{$marital}}</dt><dd class="marital-text">{{$profile.marital}}</dd></dl>{{/if}}
- {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
+ {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" class="u-url" rel="me" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
{{include file="diaspora_vcard.tpl"}}
</div>
<div id="collapsed-comments-{{$item.id}}" class="collapsed-comments" style="display: none;">
{{/if}}
-<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}}">
+<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}} {{if $item.toplevel}} h-entry {{else}} u-comment h-cite {{/if}}">
<a name="{{$item.id}}" ></a>
{{*<!--<div class="wall-item-outside-wrapper {{$item.indent}}{{$item.previewing}} wallwall" id="wall-item-outside-wrapper-{{$item.id}}" >-->*}}
<div class="wall-item-content-wrapper {{$item.indent}} {{$item.previewing}}{{if $item.owner_url}} wallwall{{/if}}" id="wall-item-content-wrapper-{{$item.id}}" >
</div>
<div class="wall-item-arrowphoto-wrapper" ><img src="images/larrow.gif" alt="{{$item.wall}}" /></div>
{{/if}}
- <div class="wall-item-photo-wrapper wwfrom" id="wall-item-photo-wrapper-{{$item.id}}"
+ <div class="wall-item-photo-wrapper wwfrom p-author h-card" 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}}" onError="this.src='../../../images/person-48.jpg';" />
+ <a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="wall-item-photo-link u-url" id="wall-item-photo-link-{{$item.id}}">
+ <img src="{{$item.thumb}}" class="wall-item-photo{{$item.sparkle}} p-name u-photo" id="wall-item-photo-{{$item.id}}" style="height: 80px; width: 80px;" alt="{{$item.name}}" onError="this.src='../../../images/person-48.jpg';" />
</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}}">-->*}}
</div>
{{*<!--<div class="wall-item-author">-->*}}
<a href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="wall-item-name-link"><span class="wall-item-name{{$item.sparkle}}" id="wall-item-name-{{$item.id}}" >{{$item.name}}</span></a>{{if $item.owner_url}} {{$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}}{{/if}}<br />
- <div class="wall-item-ago" id="wall-item-ago-{{$item.id}}" title="{{$item.localtime}}" ><a href="display/{{$user.nickname}}/{{$item.id}}">{{$item.ago}}</a></div>
+ <div class="wall-item-ago" id="wall-item-ago-{{$item.id}}" title="{{$item.localtime}}" ><a href="display/{{$user.nickname}}/{{$item.id}}"><time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time></a></div>
{{*<!--</div>-->*}}
<div class="wall-item-content" id="wall-item-content-{{$item.id}}" >
- <div class="wall-item-title" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
+ <div class="wall-item-title p-name" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
{{*<!--<div class="wall-item-title-end"></div>-->*}}
- <div class="wall-item-body" id="wall-item-body-{{$item.id}}" >{{$item.body}}
+ <div class="wall-item-body" id="wall-item-body-{{$item.id}}" ><span class="e-content">{{$item.body}}</span>
{{*<!--<div class="body-tag">-->*}}
{{foreach $item.tags as $tag}}
<span class='body-tag tag'>{{$tag}}</span>
{{/foreach}}
{{*<!--</div>-->*}}
{{if $item.has_cats}}
- <div class="categorytags">{{$item.txt_cats}} {{foreach $item.categories as $cat}}{{$cat.name}} <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
+ <div class="categorytags">{{$item.txt_cats}} {{foreach $item.categories as $cat}}<span class="p-category">{{$cat.name}}</span> <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
{{if $item.has_folders}}
- <div class="filesavetags">{{$item.txt_folders}} {{foreach $item.folders as $cat}}{{$cat.name}} <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
+ <div class="filesavetags">{{$item.txt_folders}} {{foreach $item.folders as $cat}}<span class="p-category">{{$cat.name}}</span> <a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a> {{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
</div>
</div>
{{/if}}
{{if $item.plink}}
- {{*<!--<div class="wall-item-links-wrapper">-->*}}<a href="{{$item.plink.href}}" title="{{$item.plink.title}}" target="external-link" class="wall-item-links-wrapper icon remote-link{{$item.sparkle}}"></a>{{*<!--</div>-->*}}
+ {{*<!--<div class="wall-item-links-wrapper">-->*}}<a href="{{$item.plink.href}}" title="{{$item.plink.title}}" target="external-link" class="wall-item-links-wrapper icon remote-link{{$item.sparkle}} u-url"></a>{{*<!--</div>-->*}}
{{/if}}
{{if $item.edpost}}
<a class="editpost tool pencil" href="{{$item.edpost.0}}" title="{{$item.edpost.1}}"></a>
-<div class="vcard">
+<div class="vcard h-card">
<div class="tool">
- <div class="fn label">{{$profile.name}}</div>
+ <div class="fn label p-name">{{$profile.name}}</div>
{{if $profile.edit}}
<div class="action">
<a class="icon s16 edit ttright" href="#" rel="#profiles-menu" title="{{$profile.edit.3}}"><span>{{$profile.edit.1}}</span></a>
{{if $profile.addr}}<div class="p-addr">{{$profile.addr}}</div>{{/if}}
{{if $pdesc}}<div class="title">{{$profile.pdesc}}</div>{{/if}}
- <div id="profile-photo-wrapper"><img class="photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}" /></div>
+ <div id="profile-photo-wrapper"><img class="photo u-photo" width="175" height="175" src="{{$profile.photo}}?rev={{$profile.picdate}}" alt="{{$profile.name}}" /></div>
{{if $account_type}}<div class="account-type">{{$account_type}}</div>{{/if}}
{{if $location}}
<dl class="location"><dt class="location-label">{{$location}}</dt>
- <dd class="adr">
- {{if $profile.address}}<div class="street-address">{{$profile.address}}</div>{{/if}}
+ <dd class="adr h-adr">
+ {{if $profile.address}}<div class="street-address p-street-address">{{$profile.address}}</div>{{/if}}
<span class="city-state-zip">
- <span class="locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
- <span class="region">{{$profile.region}}</span>
- <span class="postal-code">{{$profile.postal_code}}</span>
+ <span class="locality p-locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
+ <span class="region p-region">{{$profile.region}}</span>
+ <span class="postal-code p-postal-code">{{$profile.postal_code}}</span>
</span>
- {{if $profile.country_name}}<span class="country-name">{{$profile.country_name}}</span>{{/if}}
+ {{if $profile.country_name}}<span class="country-name p-country-name">{{$profile.country_name}}</span>{{/if}}
</dd>
</dl>
{{/if}}
- {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="x-gender">{{$profile.gender}}</dd></dl>{{/if}}
+ {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="p-gender">{{$profile.gender}}</dd></dl>{{/if}}
{{if $profile.pubkey}}<div class="key" style="display:none;">{{$profile.pubkey}}</div>{{/if}}
{{if $homepage}}
<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt>
- <dd class="homepage-url"><a href="{{$profile.homepage}}" target="external-link">{{$profile.homepage}}</a></dd>
+ <dd class="homepage-url"><a href="{{$profile.homepage}}" class="u-url" rel="me" target="external-link">{{$profile.homepage}}</a></dd>
</dl>
{{/if}}
{{foreach $threads as $thread}}
-<div id="tread-wrapper-{{$thread.id}}" class="tread-wrapper {{if $thread.threaded}}threaded{{/if}} {{$thread.toplevel}} {{$thread.network}}">
+<div id="tread-wrapper-{{$thread.id}}" class="tread-wrapper {{if $thread.threaded}}threaded{{/if}} {{$thread.toplevel}} {{if $thread.toplevel}} h-entry {{else}} u-comment h-cite {{/if}} {{$thread.network}}">
{{if $thread.type == tag}}
{{/if}}
{{/if}}
-{{if $item.thread_level!=1}}<div class="children">{{/if}}
+{{if $item.thread_level!=1}}<div class="children u-comment h-cite">{{/if}}
<div class="wall-item-decor">
{{if $item.star}}<span class="icon s22 star {{$item.isstarred}}" id="starred-{{$item.id}}" title="{{$item.star.starred}}">{{$item.star.starred}}</span>{{/if}}
<div class="wall-item-container {{$item.indent}} {{$item.shiny}} {{$item.network}}" id="item-{{$item.guid}}">
<div class="wall-item-item">
<div class="wall-item-info">
- <div class="contact-photo-wrapper mframe{{if $item.owner_url}} wwfrom{{/if}}"
+ <div class="contact-photo-wrapper mframe{{if $item.owner_url}} wwfrom{{/if}} p-author h-card"
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 href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="contact-photo-link u-url" id="wall-item-photo-link-{{$item.id}}">
+ <img src="{{$item.thumb}}" class="contact-photo {{$item.sparkle}} p-name u-photo" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" />
</a>
<a href="#" rel="#wall-item-photo-menu-{{$item.id}}" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-{{$item.id}}">menu</a>
<ul class="contact-menu menu-popup" id="wall-item-photo-menu-{{$item.id}}">
<div class="wall-item-location">{{$item.location}}</div>
</div>
<div class="wall-item-content">
- {{if $item.title}}<h2><a href="{{$item.plink.href}}" class="{{$item.sparkle}}">{{$item.title}}</a></h2>{{/if}}
- {{$item.body}}
+ {{if $item.title}}<h2><a href="{{$item.plink.href}}" class="{{$item.sparkle}} p-name">{{$item.title}}</a></h2>{{/if}}
+ <span class="e-content {{if !$item.title}}p-name{{/if}}">{{$item.body}}</span>
</div>
</div>
<div class="wall-item-bottom">
<span class='mention'>{{$tag}}</span>
{{/foreach}}
{{foreach $item.folders as $cat}}
- <span class='folder'>{{$cat.name}}</a>{{if $cat.removeurl}} (<a href="{{$cat.removeurl}}" title="{{$remove}}">x</a>) {{/if}} </span>
+ <span class='folder p-category'>{{$cat.name}}</a>{{if $cat.removeurl}} (<a href="{{$cat.removeurl}}" title="{{$remove}}">x</a>) {{/if}} </span>
{{/foreach}}
{{foreach $item.categories as $cat}}
- <span class='category'>{{$cat.name}}</a>{{if $cat.removeurl}} (<a href="{{$cat.removeurl}}" title="{{$remove}}">x</a>) {{/if}} </span>
+ <span class='category p-category'>{{$cat.name}}</a>{{if $cat.removeurl}} (<a href="{{$cat.removeurl}}" title="{{$remove}}">x</a>) {{/if}} </span>
{{/foreach}}
</div>
</div>
<div class="wall-item-bottom">
<div class="wall-item-links">
- {{if $item.plink}}<a class="icon s16 link{{$item.sparkle}}" title="{{$item.plink.title}}" href="{{$item.plink.href}}">{{$item.plink.title}}</a>{{/if}}
+ {{if $item.plink}}<a class="icon s16 link{{$item.sparkle}} u-url" title="{{$item.plink.title}}" href="{{$item.plink.href}}">{{$item.plink.title}}</a>{{/if}}
</div>
<div class="wall-item-actions">
<div class="wall-item-actions-author">
title="{{$item.linktitle}}"
class="wall-item-name-link"><span
class="wall-item-name{{$item.sparkle}}">{{$item.name}}</span></a>
- <span class="wall-item-ago" title="{{$item.localtime}}">{{$item.ago}}</span>
+ <span class="wall-item-ago" title="{{$item.localtime}}"><time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time></span>
{{if $item.owner_url}}<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}}
{{/if}}
</div>
<div id="collapsed-comments-{{$item.id}}" class="collapsed-comments" style="display: none;">
{{/if}}
-<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}}">
+<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}} {{if $item.toplevel}} h-entry {{else}} u-comment h-cite {{/if}}">
<div class="wall-item-outside-wrapper {{$item.indent}} {{$item.shiny}} wallwall" id="wall-item-outside-wrapper-{{$item.id}}" >
<div class="wall-item-content-wrapper {{$item.indent}} {{$item.shiny}}" id="wall-item-content-wrapper-{{$item.id}}" >
</div>
<div class="wall-item-arrowphoto-wrapper" ><img src="view/theme/smoothly/images/larrow.gif" alt="{{$item.wall}}" /></div>
{{/if}}
- <div class="wall-item-photo-wrapper mframe{{if $item.owner_url}} wwfrom{{/if}}" id="wall-item-photo-wrapper-{{$item.id}}"
+ <div class="wall-item-photo-wrapper mframe{{if $item.owner_url}} wwfrom{{/if}} p-author h-card" 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>
+ <a href="{{$item.profile_url}}" title="{{$item.linktitle}}" class="wall-item-photo-link u-url" id="wall-item-photo-link-{{$item.id}}">
+ <img src="{{$item.thumb}}" class="wall-item-photo{{$item.sparkle}} p-name u-photo" 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>
<span class="wall-item-name{{$item.sparkle}}" id="wall-item-name-{{$item.id}}" >{{$item.name}}</span>
</a>
<div class="wall-item-ago">•</div>
- <div class="wall-item-ago" id="wall-item-ago-{{$item.id}}" title="{{$item.localtime}}">{{$item.ago}}</div>
+ <div class="wall-item-ago" id="wall-item-ago-{{$item.id}}" title="{{$item.localtime}}"><time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time></div>
</div>
<div>
<hr class="line-dots">
</div>
- <div class="wall-item-title" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
+ <div class="wall-item-title p-name" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
<div class="wall-item-title-end"></div>
- <div class="wall-item-body" id="wall-item-body-{{$item.id}}" >{{$item.body}}
+ <div class="wall-item-body" id="wall-item-body-{{$item.id}}" ><span class="e-content">{{$item.body}}</span>
<div class="body-tag">
{{foreach $item.tags as $tag}}
<span class='tag'>{{$tag}}</span>
</div>
{{if $item.has_cats}}
- <div class="categorytags"><span>{{$item.txt_cats}} {{foreach $item.categories as $cat}}{{$cat.name}}
+ <div class="categorytags"><span>{{$item.txt_cats}} {{foreach $item.categories as $cat}}<span class="p-category">{{$cat.name}}</span>
<a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a>
{{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</div>
{{/if}}
{{if $item.has_folders}}
- <div class="filesavetags"><span>{{$item.txt_folders}} {{foreach $item.folders as $cat}}{{$cat.name}}
+ <div class="filesavetags"><span>{{$item.txt_folders}} {{foreach $item.folders as $cat}}<span class="p-category">{{$cat.name}}</span>
<a href="{{$cat.removeurl}}" title="{{$remove}}">[{{$remove}}]</a>
{{if $cat.last}}{{else}}, {{/if}}{{/foreach}}
</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>
+ <a href="{{$item.plink.href}}" title="{{$item.plink.title}}" target="external-link" class="icon remote-link u-url"></a>
</div>
{{/if}}
-<div class="vcard">
- <div class="fn label">{{$profile.name}}</div>
+<div class="vcard h-card">
+ <div class="fn label p-name">{{$profile.name}}</div>
{{if $pdesc}}<div class="title">{{$profile.pdesc}}</div>{{/if}}
- <div id="profile-photo-wrapper"><img class="photo" width="175" height="175" src="{{$profile.photo}}" alt="{{$profile.name}}"></div>
+ <div id="profile-photo-wrapper"><img class="photo u-photo" width="175" height="175" src="{{$profile.photo}}" alt="{{$profile.name}}"></div>
{{if $location}}
<dl class="location"><dt class="location-label">{{$location}}</dt>
- <dd class="adr">
- {{if $profile.address}}<div class="street-address">{{$profile.address}}</div>{{/if}}
+ <dd class="adr h-adr">
+ {{if $profile.address}}<div class="street-address p-street-address">{{$profile.address}}</div>{{/if}}
<span class="city-state-zip">
- <span class="locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
- <span class="region">{{$profile.region}}</span>
- <span class="postal-code">{{$profile.postal_code}}</span>
+ <span class="locality p-locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
+ <span class="region p-region">{{$profile.region}}</span>
+ <span class="postal-code p-postal-code">{{$profile.postal_code}}</span>
</span>
- {{if $profile.country_name}}<span class="country-name">{{$profile.country_name}}</span>{{/if}}
+ {{if $profile.country_name}}<span class="country-name p-country-name">{{$profile.country_name}}</span>{{/if}}
</dd>
</dl>
{{/if}}
- {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="x-gender">{{$profile.gender}}</dd></dl>{{/if}}
+ {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="p-gender">{{$profile.gender}}</dd></dl>{{/if}}
{{if $profile.pubkey}}<div class="key" style="display:none;">{{$profile.pubkey}}</div>{{/if}}
{{if $marital}}<dl class="marital"><dt class="marital-label"><span class="heart">♥</span>{{$marital}}</dt><dd class="marital-text">{{$profile.marital}}</dd></dl>{{/if}}
- {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
+ {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" class="u-url" rel="me" target="external-link">{{$profile.homepage}}</a></dd></dl>{{/if}}
{{include file="diaspora_vcard.tpl"}}
</div>
<div id="collapsed-comments-{{$item.id}}" class="collapsed-comments" style="display: none;">
{{/if}}
-<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}}">
+<div id="tread-wrapper-{{$item.id}}" class="tread-wrapper {{$item.toplevel}} {{if $item.toplevel}} h-entry {{else}} u-comment h-cite {{/if}}">
<div class="wall-item-outside-wrapper {{$item.indent}} {{$item.shiny}} wallwall" id="wall-item-outside-wrapper-{{$item.id}}" >
<div class="wall-item-content-wrapper {{$item.indent}} {{$item.shiny}}" id="wall-item-content-wrapper-{{$item.id}}" >
<div class="wall-item-info{{if $item.owner_url}} wallwall{{/if}}" id="wall-item-info-{{$item.id}}">
</div>
<div class="wall-item-arrowphoto-wrapper" ><img src="images/larrow.gif" alt="{{$item.wall}}" /></div>
{{/if}}
- <div class="wall-item-photo-wrapper mframe{{if $item.owner_url}} wwfrom{{/if}}" id="wall-item-photo-wrapper-{{$item.id}}"
+ <div class="wall-item-photo-wrapper mframe{{if $item.owner_url}} wwfrom{{/if}} p-author h-card" 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>
+ <a href="{{$item.profile_url}}" title="{{$item.linktitle}}" class="wall-item-photo-link u-url" id="wall-item-photo-link-{{$item.id}}">
+ <img src="{{$item.thumb}}" class="wall-item-photo{{$item.sparkle}} p-name u-photo" 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>
{{else}}<div class="wall-item-lock"></div>{{/if}}
</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 p-name" id="wall-item-title-{{$item.id}}">{{$item.title}}</div>
<div class="wall-item-title-end"></div>
- <div class="wall-item-body" id="wall-item-body-{{$item.id}}" >{{$item.body}}
+ <div class="wall-item-body" id="wall-item-body-{{$item.id}}" ><span class="e-content">{{$item.body}}</span>
<div class="body-tag">
{{foreach $item.tags as $tag}}
<span class='tag'>{{$tag}}</span>
</div>
{{/if}}
{{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>
+ <div class="wall-item-links-wrapper"><a href="{{$item.plink.href}}" title="{{$item.plink.title}}" target="external-link" class="icon remote-link u-url"></a></div>
{{/if}}
{{if $item.edpost}}
<a class="editpost icon pencil" href="{{$item.edpost.0}}" title="{{$item.edpost.1}}"></a>
</div>
<div class="wall-item-author">
<a href="{{$item.profile_url}}" title="{{$item.linktitle}}" class="wall-item-name-link"><span class="wall-item-name{{$item.sparkle}}" id="wall-item-name-{{$item.id}}" >{{$item.name}}</span></a>
- <div class="wall-item-ago" id="wall-item-ago-{{$item.id}}">{{$item.ago}}</div>
+ <div class="wall-item-ago" id="wall-item-ago-{{$item.id}}"><time class="dt-published" datetime="{{$item.localtime}}">{{$item.ago}}</time></div>
</div>
</div>
<div class="wall-item-wrapper-end"></div>
{{if $profile.network_name}}<dl class="network"><dt class="network-label">{{$network}}</dt><dd class="x-network">{{$profile.network_name}}</dd></dl>{{/if}}
{{if $location}}
<dl class="location"><dt class="location-label">{{$location}}</dt>
- <dd class="adr">
+ <dd class="adr h-adr">
{{if $profile.address}}<div class="street-address p-street-address">{{$profile.address}}</div>{{/if}}
<span class="city-state-zip">
<span class="locality p-locality">{{$profile.locality}}</span>{{if $profile.locality}}, {{/if}}
</dl>
{{/if}}
- {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="x-gender p-gender-identity">{{$profile.gender}}</dd></dl>{{/if}}
+ {{if $gender}}<dl class="mf"><dt class="gender-label">{{$gender}}</dt> <dd class="p-gender">{{$profile.gender}}</dd></dl>{{/if}}
{{if $profile.pubkey}}<div class="key u-key" style="display:none;">{{$profile.pubkey}}</div>{{/if}}
{{if $marital}}<dl class="marital"><dt class="marital-label"><span class="heart">♥</span>{{$marital}}</dt><dd class="marital-text">{{$profile.marital}}</dd></dl>{{/if}}
- {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url u-url"><a href="{{$profile.homepage}}" rel="me" target="_blank">{{$profile.homepage}}</a></dd></dl>{{/if}}
+ {{if $homepage}}<dl class="homepage"><dt class="homepage-label">{{$homepage}}</dt><dd class="homepage-url"><a href="{{$profile.homepage}}" class="u-url" rel="me" target="_blank">{{$profile.homepage}}</a></dd></dl>{{/if}}
{{if $about}}<dl class="about"><dt class="about-label">{{$about}}</dt><dd class="x-network">{{$profile.about}}</dd></dl>{{/if}}
{{foreach $threads as $thread}}
<hr class="sr-only" />
-<div id="tread-wrapper-{{$thread.id}}" class="tread-wrapper {{if $thread.threaded}}threaded{{/if}} {{$thread.toplevel}} {{$thread.network}}">
+<div id="tread-wrapper-{{$thread.id}}" class="tread-wrapper {{if $thread.threaded}}threaded{{/if}} {{$thread.toplevel}} {{if $thread.toplevel}}h-entry{{/if}} {{$thread.network}}">
{{if $thread.type == tag}}
{{/if}}
{{/if}}
-{{if $item.thread_level!=1}}<div class="children">{{/if}}
+{{if $item.thread_level!=1}}<div class="children u-comment h-cite">{{/if}}
<div aria-hidden="true" class="wall-item-decor">
<img id="like-rotator-{{$item.id}}" class="like-rotator" src="images/rotator.gif" alt="{{$item.wait}}" title="{{$item.wait}}" style="display: none;" />
{{/if}}
<div class="wall-item-item">
<div class="wall-item-info">
- <div class="contact-photo-wrapper mframe{{if $item.owner_url}} wwfrom{{/if}}">
- <!-- <a aria-hidden="true" href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="contact-photo-link" id="wall-item-photo-link-{{$item.id}}"></a> -->
- <img src="{{$item.thumb}}" class="contact-photo {{$item.sparkle}}" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" />
+ <div class="contact-photo-wrapper mframe{{if $item.owner_url}} wwfrom{{/if}} p-author h-card">
+ <!-- <a aria-hidden="true" href="{{$item.profile_url}}" target="redir" title="{{$item.linktitle}}" class="contact-photo-link u-url" id="wall-item-photo-link-{{$item.id}}"></a> -->
+ <img src="{{$item.thumb}}" class="contact-photo {{$item.sparkle}} p-name u-photo" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" />
<ul role="menu" aria-haspopup="true" class="contact-menu menu-popup" id="wall-item-photo-menu-{{$item.id}}">
{{$item.item_photo_menu}}
</ul>
</div>
{{if $item.owner_url}}
<div aria-hidden="true" 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 href="{{$item.owner_url}}" target="redir" title="{{$item.olinktitle}}" class="contact-photo-link u-url" id="wall-item-ownerphoto-link-{{$item.id}}">
+ <img src="{{$item.owner_photo}}" class="contact-photo {{$item.osparkle}} p-name u-photo" id="wall-item-ownerphoto-{{$item.id}}" alt="{{$item.owner_name}}" />
</a>
</div>
{{/if}}
<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>
{{if $item.owner_url}}{{$item.via}} <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>{{/if}}
<span class="wall-item-ago">
- {{if $item.plink}}<a title="{{$item.plink.title}}" href="{{$item.plink.href}}" style="color: #999">{{$item.created}}</a>{{else}} {{$item.created}} {{/if}}
+ {{if $item.plink}}<a title="{{$item.plink.title}}" href="{{$item.plink.href}}" class="u-url" style="color: #999"><time class="dt-published" datetime="{{$item.localtime}}">{{$item.created}}</time></a>{{else}} <time class="dt-published" datetime="{{$item.localtime}}">{{$item.created}}</time> {{/if}}
</span>
{{if $item.lock}}<span class="icon s10 lock fakelink" onclick="lockview(event,{{$item.id}});" title="{{$item.lock}}">{{$item.lock}}</span>{{/if}}
<span class="wall-item-network" title="{{$item.app}}">
</div>
<div itemprop="description" class="wall-item-content">
- {{if $item.title}}<h2><a href="{{$item.plink.href}}" class="{{$item.sparkle}}">{{$item.title}}</a></h2>{{/if}}
- {{$item.body}}
+ {{if $item.title}}<h2><a href="{{$item.plink.href}}" class="{{$item.sparkle}} p-name">{{$item.title}}</a></h2>{{/if}}
+ <span class="e-content {{if !$item.title}}p-name{{/if}}">{{$item.body}}</span>
</div>
</div>
<div class="wall-item-bottom">
<span class='mention'>{{$tag}}</span>
{{/foreach}}
{{foreach $item.folders as $cat}}
- <span class='folder'>{{$cat.name}}</a>{{if $cat.removeurl}} (<a href="{{$cat.removeurl}}" title="{{$remove}}">x</a>) {{/if}} </span>
+ <span class='folder p-category'>{{$cat.name}}</a>{{if $cat.removeurl}} (<a href="{{$cat.removeurl}}" title="{{$remove}}">x</a>) {{/if}} </span>
{{/foreach}}
{{foreach $item.categories as $cat}}
- <span class='category'>{{$cat.name}}</a>{{if $cat.removeurl}} (<a href="{{$cat.removeurl}}" title="{{$remove}}">x</a>) {{/if}} </span>
+ <span class='category p-category'>{{$cat.name}}</a>{{if $cat.removeurl}} (<a href="{{$cat.removeurl}}" title="{{$remove}}">x</a>) {{/if}} </span>
{{/foreach}}
</div>
</div>