<?php
-function display_content(&$a) {
+function display_init(&$a) {
+
+ if((get_config('system','block_public')) && (! local_user()) && (! remote_user())) {
+ return;
+ }
+
+ $nick = (($a->argc > 1) ? $a->argv[1] : '');
+ profile_load($a,$nick);
+
+}
+
+
+function display_content(&$a, $update = 0) {
if((get_config('system','block_public')) && (! local_user()) && (! remote_user())) {
notice( t('Public access denied.') . EOL);
$o = '';
- $a->page['htmlhead'] .= get_markup_template('display-head.tpl');
+ $a->page['htmlhead'] .= replace_macros(get_markup_template('display-head.tpl'), array());
- $nick = (($a->argc > 1) ? $a->argv[1] : '');
- profile_load($a,$nick);
+ if($update) {
+ $nick = $_REQUEST['nick'];
+ }
+ else {
+ $nick = (($a->argc > 1) ? $a->argv[1] : '');
+ }
- $item_id = (($a->argc > 2) ? intval($a->argv[2]) : 0);
+ if($update) {
+ $item_id = $_REQUEST['item_id'];
+ $a->profile = array('uid' => intval($update), 'profile_uid' => intval($update));
+ }
+ else {
+ $item_id = (($a->argc > 2) ? intval($a->argv[2]) : 0);
+ }
if(! $item_id) {
$a->error = 404;
'acl' => populate_acl($a->user, $celeb),
'bang' => '',
'visitor' => 'block',
- 'profile_uid' => local_user()
- );
+ 'profile_uid' => local_user(),
+ 'acl_data' => construct_acl_data($a, $a->user), // For non-Javascript ACL selector
+ );
$o .= status_editor($a,$x,0,true);
}
$sql_extra = item_permissions_sql($a->profile['uid'],$remote_contact,$groups);
+ if($update) {
+
+ $r = q("SELECT id FROM item WHERE item.uid = %d
+ AND `item`.`parent` = ( SELECT `parent` FROM `item` WHERE ( `id` = '%s' OR `uri` = '%s' ))
+ $sql_extra AND unseen = 1",
+ intval($a->profile['uid']),
+ dbesc($item_id),
+ dbesc($item_id)
+ );
+
+ if(!$r)
+ return '';
+ }
+
$r = q("SELECT `item`.*, `item`.`id` AS `item_id`,
`contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`rel`,
`contact`.`network`, `contact`.`thumb`, `contact`.`self`, `contact`.`writable`,
}
$items = conv_sort($r,"`commented`");
-
- $o .= conversation($a,$items,'display', false);
+
+ if(!$update)
+ $o .= "<script> var netargs = '?f=&nick=" . $nick . "&item_id=" . $item_id . "'; </script>";
+ $o .= conversation($a,$items,'display', $update);
+
+ // Preparing the meta header
+ require_once('include/bbcode.php');
+ require_once("include/html2plain.php");
+ $description = trim(html2plain(bbcode($r[0]["body"], false, false), 0, true));
+ $title = trim(html2plain(bbcode($r[0]["title"], false, false), 0, true));
+
+ if ($title == "")
+ $title = $r[0]["author-name"];
+
+ //<meta name="keywords" content="">
+ $a->page['htmlhead'] .= '<meta name="author" content="'.$r[0]["author-name"].'" />'."\n";
+ $a->page['htmlhead'] .= '<meta name="title" content="'.$title.'" />'."\n";
+ $a->page['htmlhead'] .= '<meta name="fulltitle" content="'.$title.'" />'."\n";
+ $a->page['htmlhead'] .= '<meta name="description" content="'.$description.'" />'."\n";
+
+ $a->page['htmlhead'] .= '<meta name="DC.title" content="'.$title.'" />'."\n";
+ $a->page['htmlhead'] .= '<meta name="DC.description" content="'.$description.'" />'."\n";
+
+ $a->page['htmlhead'] .= '<meta property="og:type" content="website" />'."\n";
+ $a->page['htmlhead'] .= '<meta property="og:title" content="'.$title.'" />'."\n";
+ //<meta property="og:image" content="" />
+ $a->page['htmlhead'] .= '<meta property="og:url" content="'.$r[0]["plink"].'" />'."\n";
+ $a->page['htmlhead'] .= '<meta property="og:description" content="'.$description.'" />'."\n";
+ $a->page['htmlhead'] .= '<meta name="og:article:author" content="'.$r[0]["author-name"].'" />'."\n";
+ // article:tag
}
else {