本文整理汇总了PHP中template_escape函数的典型用法代码示例。如果您正苦于以下问题:PHP template_escape函数的具体用法?PHP template_escape怎么用?PHP template_escape使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了template_escape函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: files2
function files2($rr)
{
global $a;
list($m1, $m2) = explode("/", $rr['filetype']);
$filetype = file_exists("images/icons/{$m1}.png") ? $m1 : "zip";
return array($a->get_baseurl() . '/attach/' . $rr['id'], template_escape($rr['filename']), $a->get_baseurl() . '/images/icons/16/' . $filetype . '.png');
}
开发者ID:robhell,项目名称:friendica,代码行数:7,代码来源:fbrowser.php
示例2: files2
private static function files2($rr)
{
list($m1, $m2) = explode("/", $rr['filetype']);
$filetype = file_exists("images/icons/{$m1}.png") ? $m1 : "zip";
if (\App::get_template_engine() === 'internal') {
$filename_e = template_escape($rr['filename']);
} else {
$filename_e = $rr['filename'];
}
return array(z_root() . '/attach/' . $rr['id'], $filename_e, z_root() . '/images/icons/16/' . $filetype . '.png');
}
开发者ID:BlaBlaNet,项目名称:hubzilla,代码行数:11,代码来源:Fbrowser.php
示例3: _get_var
private function _get_var($name, $retNoKey = false)
{
$keys = array_map('trim', explode(".", $name));
if ($retNoKey && !array_key_exists($keys[0], $this->r)) {
return KEY_NOT_EXISTS;
}
$val = $this->r;
foreach ($keys as $k) {
$val = isset($val[$k]) ? $val[$k] : null;
}
return template_escape($val);
}
开发者ID:BlaBlaNet,项目名称:hubzilla,代码行数:12,代码来源:SimpleTemplate.php
示例4: files2
function files2($rr)
{
global $a;
list($m1, $m2) = explode("/", $rr['filetype']);
$filetype = file_exists("images/icons/{$m1}.png") ? $m1 : "zip";
if ($a->theme['template_engine'] === 'internal') {
$filename_e = template_escape($rr['filename']);
} else {
$filename_e = $rr['filename'];
}
return array($a->get_baseurl() . '/attach/' . $rr['id'], $filename_e, $a->get_baseurl() . '/images/icons/16/' . $filetype . '.png');
}
开发者ID:jzacman,项目名称:friendica,代码行数:12,代码来源:fbrowser.php
示例5: profile_sidebar
function profile_sidebar($profile, $block = 0)
{
$a = get_app();
$o = '';
$location = false;
$address = false;
$pdesc = true;
if (!is_array($profile) && !count($profile)) {
return $o;
}
$profile['picdate'] = urlencode($profile['picdate']);
call_hooks('profile_sidebar_enter', $profile);
// don't show connect link to yourself
$connect = $profile['uid'] != local_user() ? t('Connect') : False;
// don't show connect link to authenticated visitors either
if (remote_user() && count($_SESSION['remote'])) {
foreach ($_SESSION['remote'] as $visitor) {
if ($visitor['uid'] == $profile['uid']) {
$connect = false;
break;
}
}
}
if (get_my_url() && $profile['unkmail'] && $profile['uid'] != local_user()) {
$wallmessage = t('Message');
} else {
$wallmessage = false;
}
// show edit profile to yourself
if ($profile['uid'] == local_user() && feature_enabled(local_user(), 'multi_profiles')) {
$profile['edit'] = array($a->get_baseurl() . '/profiles', t('Profiles'), "", t('Manage/edit profiles'));
$r = q("SELECT * FROM `profile` WHERE `uid` = %d", local_user());
$profile['menu'] = array('chg_photo' => t('Change profile photo'), 'cr_new' => t('Create New Profile'), 'entries' => array());
if (count($r)) {
foreach ($r as $rr) {
$profile['menu']['entries'][] = array('photo' => $rr['thumb'], 'id' => $rr['id'], 'alt' => t('Profile Image'), 'profile_name' => $rr['profile-name'], 'isdefault' => $rr['is-default'], 'visibile_to_everybody' => t('visible to everybody'), 'edit_visibility' => t('Edit visibility'));
}
}
}
if ($profile['uid'] == local_user() && !feature_enabled(local_user(), 'multi_profiles')) {
$profile['edit'] = array($a->get_baseurl() . '/profiles/' . $profile['id'], t('Edit profile'), "", t('Edit profile'));
$profile['menu'] = array('chg_photo' => t('Change profile photo'), 'cr_new' => null, 'entries' => array());
}
if (x($profile, 'address') == 1 || x($profile, 'locality') == 1 || x($profile, 'region') == 1 || x($profile, 'postal-code') == 1 || x($profile, 'country-name') == 1) {
$location = t('Location:');
}
$gender = x($profile, 'gender') == 1 ? t('Gender:') : False;
$marital = x($profile, 'marital') == 1 ? t('Status:') : False;
$homepage = x($profile, 'homepage') == 1 ? t('Homepage:') : False;
if (($profile['hidewall'] || $block) && !local_user() && !remote_user()) {
$location = $pdesc = $gender = $marital = $homepage = False;
}
$firstname = strpos($profile['name'], ' ') ? trim(substr($profile['name'], 0, strpos($profile['name'], ' '))) : $profile['name'];
$lastname = $firstname === $profile['name'] ? '' : trim(substr($profile['name'], strlen($firstname)));
$diaspora = array('podloc' => $a->get_baseurl(), 'searchable' => $profile['publish'] && $profile['net-publish'] ? 'true' : 'false', 'nickname' => $profile['nickname'], 'fullname' => $profile['name'], 'firstname' => $firstname, 'lastname' => $lastname, 'photo300' => $a->get_cached_avatar_image($a->get_baseurl() . '/photo/custom/300/' . $profile['uid'] . '.jpg'), 'photo100' => $a->get_cached_avatar_image($a->get_baseurl() . '/photo/custom/100/' . $profile['uid'] . '.jpg'), 'photo50' => $a->get_cached_avatar_image($a->get_baseurl() . '/photo/custom/50/' . $profile['uid'] . '.jpg'));
if (!$block) {
$contact_block = contact_block();
}
$p = array();
foreach ($profile as $k => $v) {
$k = str_replace('-', '_', $k);
$p[$k] = $v;
}
if ($a->theme['template_engine'] === 'internal') {
$location = template_escape($location);
}
$tpl = get_markup_template('profile_vcard.tpl');
$o .= replace_macros($tpl, array('$profile' => $p, '$connect' => $connect, '$wallmessage' => $wallmessage, '$location' => $location, '$gender' => $gender, '$pdesc' => $pdesc, '$marital' => $marital, '$homepage' => $homepage, '$diaspora' => $diaspora, '$contact_block' => $contact_block));
$arr = array('profile' => &$profile, 'entry' => &$o);
call_hooks('profile_sidebar', $arr);
return $o;
}
开发者ID:ridcully,项目名称:friendica,代码行数:72,代码来源:boot.php
示例6: videos_content
//.........这里部分代码省略.........
} else {
if ($community_page && remote_user()) {
if (is_array($_SESSION['remote'])) {
foreach ($_SESSION['remote'] as $v) {
if ($v['uid'] == $owner_uid) {
$contact_id = $v['cid'];
break;
}
}
}
if ($contact_id) {
$r = q("SELECT `uid` FROM `contact` WHERE `blocked` = 0 AND `pending` = 0 AND `id` = %d AND `uid` = %d LIMIT 1", intval($contact_id), intval($owner_uid));
if (count($r)) {
$can_post = true;
$contact = $r[0];
$remote_contact = true;
$visitor = $cid;
}
}
}
}
// perhaps they're visiting - but not a community page, so they wouldn't have write access
if (remote_user() && !$visitor) {
$contact_id = 0;
if (is_array($_SESSION['remote'])) {
foreach ($_SESSION['remote'] as $v) {
if ($v['uid'] == $owner_uid) {
$contact_id = $v['cid'];
break;
}
}
}
if ($contact_id) {
$groups = init_groups_visitor($contact_id);
$r = q("SELECT * FROM `contact` WHERE `blocked` = 0 AND `pending` = 0 AND `id` = %d AND `uid` = %d LIMIT 1", intval($contact_id), intval($owner_uid));
if (count($r)) {
$contact = $r[0];
$remote_contact = true;
}
}
}
if (!$remote_contact) {
if (local_user()) {
$contact_id = $_SESSION['cid'];
$contact = $a->contact;
}
}
if ($a->data['user']['hidewall'] && local_user() != $owner_uid && !$remote_contact) {
notice(t('Access to this item is restricted.') . EOL);
return;
}
$sql_extra = permissions_sql($owner_uid, $remote_contact, $groups);
$o = "";
// tabs
$_is_owner = local_user() && local_user() == $owner_uid;
$o .= profile_tabs($a, $_is_owner, $a->data['user']['nickname']);
//
// dispatch request
//
if ($datatype === 'upload') {
return;
// no uploading for now
// DELETED -- look at mod/photos.php if you want to implement
}
if ($datatype === 'album') {
return;
// no albums for now
// DELETED -- look at mod/photos.php if you want to implement
}
if ($datatype === 'video') {
return;
// no single video view for now
// DELETED -- look at mod/photos.php if you want to implement
}
// Default - show recent videos (no upload link for now)
//$o = '';
$r = q("SELECT hash FROM `attach` WHERE `uid` = %d AND filetype LIKE '%%video%%'\n\t\t{$sql_extra} GROUP BY hash", intval($a->data['user']['uid']));
if (count($r)) {
$a->set_pager_total(count($r));
$a->set_pager_itemspage(20);
}
$r = q("SELECT hash, `id`, `filename`, filetype FROM `attach`\n\t\tWHERE `uid` = %d AND filetype LIKE '%%video%%'\n\t\t{$sql_extra} GROUP BY hash ORDER BY `created` DESC LIMIT %d , %d", intval($a->data['user']['uid']), intval($a->pager['start']), intval($a->pager['itemspage']));
$videos = array();
if (count($r)) {
foreach ($r as $rr) {
if ($a->theme['template_engine'] === 'internal') {
$alt_e = template_escape($rr['filename']);
$name_e = template_escape($rr['album']);
} else {
$alt_e = $rr['filename'];
$name_e = $rr['album'];
}
$videos[] = array('id' => $rr['id'], 'link' => $a->get_baseurl() . '/videos/' . $a->data['user']['nickname'] . '/video/' . $rr['resource-id'], 'title' => t('View Video'), 'src' => $a->get_baseurl() . '/attach/' . $rr['id'] . '?attachment=0', 'alt' => $alt_e, 'mime' => $rr['filetype'], 'album' => array('link' => $a->get_baseurl() . '/videos/' . $a->data['user']['nickname'] . '/album/' . bin2hex($rr['album']), 'name' => $name_e, 'alt' => t('View Album')));
}
}
$tpl = get_markup_template('videos_recent.tpl');
$o .= replace_macros($tpl, array('$title' => t('Recent Videos'), '$can_post' => $can_post, '$upload' => array(t('Upload New Videos'), $a->get_baseurl() . '/videos/' . $a->data['user']['nickname'] . '/upload'), '$videos' => $videos, '$delete_url' => $can_post ? $a->get_baseurl() . '/videos/' . $a->data['user']['nickname'] : False));
$o .= paginate($a);
return $o;
}
开发者ID:vinzv,项目名称:friendica,代码行数:101,代码来源:videos.php
示例7: photos_content
//.........这里部分代码省略.........
}
}
$celeb = $a->user['page-flags'] == PAGE_SOAPBOX || $a->user['page-flags'] == PAGE_COMMUNITY ? true : false;
$uploader = '';
$ret = array('post_url' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'], 'addon_text' => $uploader, 'default_upload' => true);
call_hooks('photo_upload_form', $ret);
$default_upload_box = replace_macros(get_markup_template('photos_default_uploader_box.tpl'), array());
$default_upload_submit = replace_macros(get_markup_template('photos_default_uploader_submit.tpl'), array('$submit' => t('Submit')));
$usage_message = '';
$limit = service_class_fetch($a->data['user']['uid'], 'photo_upload_limit');
if ($limit !== false) {
$r = q("select sum(datasize) as total from photo where uid = %d and scale = 0 and album != 'Contact Photos' ", intval($a->data['user']['uid']));
$usage_message = sprintf(t("You have used %1\$.2f Mbytes of %2\$.2f Mbytes photo storage."), $r[0]['total'] / 1024000, $limit / 1024000);
}
// Private/public post links for the non-JS ACL form
$private_post = 1;
if ($_REQUEST['public']) {
$private_post = 0;
}
$query_str = $a->query_string;
if (strpos($query_str, 'public=1') !== false) {
$query_str = str_replace(array('?public=1', '&public=1'), array('', ''), $query_str);
}
// I think $a->query_string may never have ? in it, but I could be wrong
// It looks like it's from the index.php?q=[etc] rewrite that the web
// server does, which converts any ? to &, e.g. suggest&ignore=61 for suggest?ignore=61
if (strpos($query_str, '?') === false) {
$public_post_link = '?public=1';
} else {
$public_post_link = '&public=1';
}
$tpl = get_markup_template('photos_upload.tpl');
if ($a->theme['template_engine'] === 'internal') {
$albumselect_e = template_escape($albumselect);
$aclselect_e = $visitor ? '' : template_escape(populate_acl($a->user, $celeb));
} else {
$albumselect_e = $albumselect;
$aclselect_e = $visitor ? '' : populate_acl($a->user, $celeb);
}
$o .= replace_macros($tpl, array('$pagename' => t('Upload Photos'), '$sessid' => session_id(), '$usage' => $usage_message, '$nickname' => $a->data['user']['nickname'], '$newalbum' => t('New album name: '), '$existalbumtext' => t('or existing album name: '), '$nosharetext' => t('Do not show a status post for this upload'), '$albumselect' => $albumselect_e, '$permissions' => t('Permissions'), '$aclselect' => $aclselect_e, '$alt_uploader' => $ret['addon_text'], '$default_upload_box' => $ret['default_upload'] ? $default_upload_box : '', '$default_upload_submit' => $ret['default_upload'] ? $default_upload_submit : '', '$uploadurl' => $ret['post_url'], '$acl_data' => construct_acl_data($a, $a->user), '$group_perms' => t('Show to Groups'), '$contact_perms' => t('Show to Contacts'), '$private' => t('Private Photo'), '$public' => t('Public Photo'), '$is_private' => $private_post, '$return_path' => $query_str, '$public_link' => $public_post_link));
return $o;
}
if ($datatype === 'album') {
$album = hex2bin($datum);
$r = q("SELECT `resource-id`, max(`scale`) AS `scale` FROM `photo` WHERE `uid` = %d AND `album` = '%s' \n\t\t\tAND `scale` <= 4 {$sql_extra} GROUP BY `resource-id`", intval($owner_uid), dbesc($album));
if (count($r)) {
$a->set_pager_total(count($r));
$a->set_pager_itemspage(20);
}
if ($_GET['order'] === 'posted') {
$order = 'ASC';
} else {
$order = 'DESC';
}
$r = q("SELECT `resource-id`, `id`, `filename`, type, max(`scale`) AS `scale`, `desc` FROM `photo` WHERE `uid` = %d AND `album` = '%s' \n\t\t\tAND `scale` <= 4 {$sql_extra} GROUP BY `resource-id` ORDER BY `created` {$order} LIMIT %d , %d", intval($owner_uid), dbesc($album), intval($a->pager['start']), intval($a->pager['itemspage']));
$o .= '<h3 id="photo-album-title">' . $album . '</h3>';
if ($cmd === 'edit') {
if ($album !== t('Profile Photos') && $album !== 'Contact Photos' && $album !== t('Contact Photos')) {
if ($can_post) {
$edit_tpl = get_markup_template('album_edit.tpl');
if ($a->theme['template_engine'] === 'internal') {
$album_e = template_escape($album);
} else {
$album_e = $album;
}
$o .= replace_macros($edit_tpl, array('$nametext' => t('New album name: '), '$nickname' => $a->data['user']['nickname'], '$album' => $album_e, '$hexalbum' => bin2hex($album), '$submit' => t('Submit'), '$dropsubmit' => t('Delete Album')));
开发者ID:jzacman,项目名称:friendica,代码行数:67,代码来源:photos.php
示例8: message_content
function message_content(&$a)
{
$o = '';
nav_set_selected('messages');
if (!local_user()) {
notice(t('Permission denied.') . EOL);
return;
}
$myprofile = $a->get_baseurl(true) . '/profile/' . $a->user['nickname'];
$tpl = get_markup_template('mail_head.tpl');
$header = replace_macros($tpl, array('$messages' => t('Messages'), '$tab_content' => $tab_content));
if ($a->argc == 3 && ($a->argv[1] === 'drop' || $a->argv[1] === 'dropconv')) {
if (!intval($a->argv[2])) {
return;
}
$cmd = $a->argv[1];
if ($cmd === 'drop') {
$r = q("DELETE FROM `mail` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($a->argv[2]), intval(local_user()));
if ($r) {
info(t('Message deleted.') . EOL);
}
goaway($a->get_baseurl(true) . '/message');
} else {
$r = q("SELECT `parent-uri`,`convid` FROM `mail` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($a->argv[2]), intval(local_user()));
if (count($r)) {
$parent = $r[0]['parent-uri'];
$convid = $r[0]['convid'];
$r = q("DELETE FROM `mail` WHERE `parent-uri` = '%s' AND `uid` = %d ", dbesc($parent), intval(local_user()));
// remove diaspora conversation pointer
// Actually if we do this, we can never receive another reply to that conversation,
// as we will never again have the info we need to re-create it.
// We'll just have to orphan it.
//if($convid) {
// q("delete from conv where id = %d limit 1",
// intval($convid)
// );
//}
if ($r) {
info(t('Conversation removed.') . EOL);
}
}
goaway($a->get_baseurl(true) . '/message');
}
}
if ($a->argc > 1 && $a->argv[1] === 'new') {
$o .= $header;
$plaintext = false;
if (intval(get_pconfig(local_user(), 'system', 'plaintext'))) {
$plaintext = true;
}
$tpl = get_markup_template('msg-header.tpl');
$a->page['htmlhead'] .= replace_macros($tpl, array('$baseurl' => $a->get_baseurl(true), '$editselect' => $plaintext ? 'none' : '/(profile-jot-text|prvmail-text)/', '$nickname' => $a->user['nickname'], '$linkurl' => t('Please enter a link URL:')));
$preselect = isset($a->argv[2]) ? array($a->argv[2]) : false;
$prename = $preurl = $preid = '';
if ($preselect) {
$r = q("select name, url, id from contact where uid = %d and id = %d limit 1", intval(local_user()), intval($a->argv[2]));
if (count($r)) {
$prename = $r[0]['name'];
$preurl = $r[0]['url'];
$preid = $r[0]['id'];
}
}
$prefill = $preselect ? $prename : '';
// the ugly select box
$select = contact_select('messageto', 'message-to-select', $preselect, 4, true, false, false, 10);
$tpl = get_markup_template('prv_message.tpl');
$o .= replace_macros($tpl, array('$header' => t('Send Private Message'), '$to' => t('To:'), '$showinputs' => 'true', '$prefill' => $prefill, '$autocomp' => $autocomp, '$preid' => $preid, '$subject' => t('Subject:'), '$subjtxt' => x($_REQUEST, 'subject') ? strip_tags($_REQUEST['subject']) : '', '$text' => x($_REQUEST, 'body') ? escape_tags(htmlspecialchars($_REQUEST['body'])) : '', '$readonly' => '', '$yourmessage' => t('Your message:'), '$select' => $select, '$parent' => '', '$upload' => t('Upload photo'), '$insert' => t('Insert web link'), '$wait' => t('Please wait'), '$submit' => t('Submit')));
return $o;
}
if ($a->argc == 1) {
// list messages
$o .= $header;
$r = q("SELECT count(*) AS `total` FROM `mail` \n\t\t\tWHERE `mail`.`uid` = %d GROUP BY `parent-uri` ORDER BY `created` DESC", intval(local_user()), dbesc($myprofile));
if (count($r)) {
$a->set_pager_total($r[0]['total']);
}
$r = q("SELECT max(`mail`.`created`) AS `mailcreated`, min(`mail`.`seen`) AS `mailseen`, \n\t\t\t`mail`.* , `contact`.`name`, `contact`.`url`, `contact`.`thumb` , `contact`.`network`,\n\t\t\tcount( * ) as count\n\t\t\tFROM `mail` LEFT JOIN `contact` ON `mail`.`contact-id` = `contact`.`id` \n\t\t\tWHERE `mail`.`uid` = %d GROUP BY `parent-uri` ORDER BY `mailcreated` DESC LIMIT %d , %d ", intval(local_user()), intval($a->pager['start']), intval($a->pager['itemspage']));
if (!count($r)) {
info(t('No messages.') . EOL);
return $o;
}
$tpl = get_markup_template('mail_list.tpl');
foreach ($r as $rr) {
if ($rr['unknown']) {
$partecipants = sprintf(t("Unknown sender - %s"), $rr['from-name']);
} elseif (link_compare($rr['from-url'], $myprofile)) {
$partecipants = sprintf(t("You and %s"), $rr['name']);
} else {
$partecipants = sprintf(t("%s and You"), $rr['from-name']);
}
$o .= replace_macros($tpl, array('$id' => $rr['id'], '$from_name' => $partecipants, '$from_url' => $rr['network'] === NETWORK_DFRN ? $a->get_baseurl(true) . '/redir/' . $rr['contact-id'] : $rr['url'], '$sparkle' => ' sparkle', '$from_photo' => $rr['thumb'] ? $rr['thumb'] : $rr['from-photo'], '$subject' => template_escape($rr['mailseen'] ? $rr['title'] : '<strong>' . $rr['title'] . '</strong>'), '$delete' => t('Delete conversation'), '$body' => template_escape($rr['body']), '$to_name' => template_escape($rr['name']), '$date' => datetime_convert('UTC', date_default_timezone_get(), $rr['mailcreated'], t('D, d M Y - g:i A')), '$seen' => $rr['mailseen'], '$count' => sprintf(tt('%d message', '%d messages', $rr['count']), $rr['count'])));
}
$o .= paginate($a);
return $o;
}
if ($a->argc > 1 && intval($a->argv[1])) {
$o .= $header;
$r = q("SELECT `mail`.*, `contact`.`name`, `contact`.`url`, `contact`.`thumb` \n\t\t\tFROM `mail` LEFT JOIN `contact` ON `mail`.`contact-id` = `contact`.`id` \n\t\t\tWHERE `mail`.`uid` = %d AND `mail`.`id` = %d LIMIT 1", intval(local_user()), intval($a->argv[1]));
if (count($r)) {
$contact_id = $r[0]['contact-id'];
//.........这里部分代码省略.........
开发者ID:robhell,项目名称:friendica,代码行数:101,代码来源:message.php
示例9: conversation
//.........这里部分代码省略.........
$sp = false;
$profile_link = best_link_url($item, $sp);
if ($profile_link === 'mailbox') {
$profile_link = '';
}
if ($sp) {
$sparkle = ' sparkle';
} else {
$profile_link = zrl($profile_link);
}
$normalised = normalise_link(strlen($item['author-link']) ? $item['author-link'] : $item['url']);
if ($normalised != 'mailbox' && x($a->contacts[$normalised])) {
$profile_avatar = $a->contacts[$normalised]['thumb'];
} else {
$profile_avatar = strlen($item['author-avatar']) ? $item['author-avatar'] : $item['thumb'];
}
$locate = array('location' => $item['location'], 'coord' => $item['coord'], 'html' => '');
call_hooks('render_location', $locate);
$location = strlen($locate['html']) ? $locate['html'] : render_location_google($locate);
localize_item($item);
if ($mode === 'network-new') {
$dropping = true;
} else {
$dropping = false;
}
$drop = array('dropping' => $dropping, 'select' => t('Select'), 'delete' => t('Delete'));
$star = false;
$isstarred = "unstarred";
$lock = false;
$likebuttons = false;
$shareable = false;
$body = prepare_body($item, true);
//$tmp_item = replace_macros($tpl,array(
$tmp_item = array('template' => $tpl, 'id' => $preview ? 'P0' : $item['item_id'], 'linktitle' => sprintf(t('View %s\'s profile @ %s'), $profile_name, strlen($item['author-link']) ? $item['author-link'] : $item['url']), 'profile_url' => $profile_link, 'item_photo_menu' => item_photo_menu($item), 'name' => template_escape($profile_name), 'sparkle' => $sparkle, 'lock' => $lock, 'thumb' => $profile_avatar, 'title' => template_escape($item['title']), 'body' => template_escape($body), 'text' => strip_tags(template_escape($body)), 'ago' => $item['app'] ? sprintf(t('%s from %s'), relative_date($item['created']), $item['app']) : relative_date($item['created']), 'location' => template_escape($location), 'indent' => '', 'owner_name' => template_escape($owner_name), 'owner_url' => $owner_url, 'owner_photo' => $owner_photo, 'plink' => get_plink($item), 'edpost' => false, 'isstarred' => $isstarred, 'star' => $star, 'drop' => $drop, 'vote' => $likebuttons, 'like' => '', 'dislike' => '', 'comment' => '', 'conv' => $preview ? '' : array('href' => $a->get_baseurl($ssl_state) . '/display/' . $nickname . '/' . $item['id'], 'title' => t('View in context')), 'previewing' => $previewing, 'wait' => t('Please wait'));
$arr = array('item' => $item, 'output' => $tmp_item);
call_hooks('display_item', $arr);
$threads[$threadsid]['id'] = $item['item_id'];
$threads[$threadsid]['items'] = array($arr['output']);
}
} else {
// Normal View
// Figure out how many comments each parent has
// (Comments all have gravity of 6)
// Store the result in the $comments array
$comments = array();
foreach ($items as $item) {
if (intval($item['gravity']) == 6 && $item['id'] != $item['parent']) {
if (!x($comments, $item['parent'])) {
$comments[$item['parent']] = 1;
} else {
$comments[$item['parent']] += 1;
}
} elseif (!x($comments, $item['parent'])) {
$comments[$item['parent']] = 0;
}
// avoid notices later on
}
// map all the like/dislike activities for each parent item
// Store these in the $alike and $dlike arrays
foreach ($items as $item) {
like_puller($a, $item, $alike, 'like');
like_puller($a, $item, $dlike, 'dislike');
}
$comments_collapsed = false;
$comments_seen = 0;
$comment_lastcollapsed = false;
开发者ID:robhell,项目名称:friendica,代码行数:67,代码来源:conversation.php
示例10: conversation
//.........这里部分代码省略.........
$sparkle = ' sparkle';
}
if ($profile_link === 'mailbox') {
$profile_link = '';
}
$normalised = normalise_link(strlen($item['author-link']) ? $item['author-link'] : $item['url']);
if ($normalised != 'mailbox' && x($a->contacts[$normalised])) {
$profile_avatar = $a->contacts[$normalised]['thumb'];
} else {
$profile_avatar = strlen($item['author-avatar']) ? $item['author-avatar'] : $item['thumb'];
}
$location = $item['location'] ? '<a target="map" title="' . $item['location'] . '" href="http://maps.google.com/?q=' . urlencode($item['location']) . '">' . $item['location'] . '</a>' : '';
$coord = $item['coord'] ? '<a target="map" title="' . $item['coord'] . '" href="http://maps.google.com/?q=' . urlencode($item['coord']) . '">' . $item['coord'] . '</a>' : '';
if ($coord) {
if ($location) {
$location .= '<br /><span class="smalltext">(' . $coord . ')</span>';
} else {
$location = '<span class="smalltext">' . $coord . '</span>';
}
}
localize_item($item);
if ($mode === 'network-new') {
$dropping = true;
} else {
$dropping = false;
}
$drop = array('dropping' => $dropping, 'select' => t('Select'), 'delete' => t('Delete'));
$star = false;
$isstarred = "unstarred";
$lock = false;
$likebuttons = false;
$shareable = false;
$body = prepare_body($item, true);
$tmp_item = replace_macros($tpl, array('$id' => $item['item_id'], '$linktitle' => sprintf(t('View %s\'s profile @ %s'), $profile_name, strlen($item['author-link']) ? $item['author-link'] : $item['url']), '$profile_url' => $profile_link, '$item_photo_menu' => item_photo_menu($item), '$name' => template_escape($profile_name), '$sparkle' => $sparkle, '$lock' => $lock, '$thumb' => $profile_avatar, '$title' => template_escape($item['title']), '$body' => template_escape($body), '$ago' => $item['app'] ? sprintf(t('%s from %s'), relative_date($item['created']), $item['app']) : relative_date($item['created']), '$lock' => $lock, '$location' => template_escape($location), '$indent' => '', '$owner_name' => template_escape($owner_name), '$owner_url' => $owner_url, '$owner_photo' => $owner_photo, '$plink' => get_plink($item), '$edpost' => false, '$isstarred' => $isstarred, '$star' => $star, '$drop' => $drop, '$vote' => $likebuttons, '$like' => '', '$dislike' => '', '$comment' => '', '$conv' => $preview ? '' : array('href' => $a->get_baseurl() . '/display/' . $nickname . '/' . $item['id'], 'title' => t('View in context')), '$wait' => t('Please wait')));
$arr = array('item' => $item, 'output' => $tmp_item);
call_hooks('display_item', $arr);
$threads[$threadsid]['id'] = $item['item_id'];
$threads[$threadsid]['html'] .= $arr['output'];
}
} else {
// Normal View
// Figure out how many comments each parent has
// (Comments all have gravity of 6)
// Store the result in the $comments array
$comments = array();
foreach ($items as $item) {
if (intval($item['gravity']) == 6 && $item['id'] != $item['parent']) {
if (!x($comments, $item['parent'])) {
$comments[$item['parent']] = 1;
} else {
$comments[$item['parent']] += 1;
}
}
}
// map all the like/dislike activities for each parent item
// Store these in the $alike and $dlike arrays
foreach ($items as $item) {
like_puller($a, $item, $alike, 'like');
like_puller($a, $item, $dlike, 'dislike');
}
$comments_collapsed = false;
$blowhard = 0;
$blowhard_count = 0;
foreach ($items as $item) {
$comment = '';
$template = $tpl;
开发者ID:nphyx,项目名称:friendica,代码行数:67,代码来源:conversation.php
示例11: photos_content
//.........这里部分代码省略.........
}
$albumselect_e = $albumselect;
$aclselect_e = $_is_owner ? populate_acl($channel_acl, false) : '';
$tpl = get_markup_template('photos_upload.tpl');
$o .= replace_macros($tpl, array('$pagename' => t('Upload Photos'), '$sessid' => session_id(), '$usage' => $usage_message, '$nickname' => $a->data['channel']['channel_address'], '$newalbum' => t('New album name: '), '$existalbumtext' => t('or existing album name: '), '$nosharetext' => t('Do not show a status post for this upload'), '$albumselect' => $albumselect_e, '$permissions' => t('Permissions'), '$aclselect' => $aclselect_e, '$uploader' => $ret['addon_text'], '$default' => $ret['default_upload'] ? $default_upload : '', '$uploadurl' => $ret['post_url']));
return $o;
}
/*
* Display a single photo album
*/
if ($datatype === 'album') {
if (strlen($datum) & 1 || !ctype_xdigit($datum)) {
notice(t('Album name could not be decoded') . EOL);
logger('mod_photos: illegal album encoding: ' . $datum);
$datum = '';
}
$album = hex2bin($datum);
$r = q("SELECT `resource_id`, max(`scale`) AS `scale` FROM `photo` WHERE `uid` = %d AND `album` = '%s' \n\t\t\tAND `scale` <= 4 and (photo_flags = %d or photo_flags = %d ) {$sql_extra} GROUP BY `resource_id`", intval($owner_uid), dbesc($album), intval(PHOTO_NORMAL), intval(PHOTO_PROFILE));
if (count($r)) {
$a->set_pager_total(count($r));
$a->set_pager_itemspage(60);
}
if ($_GET['order'] === 'posted') {
$order = 'ASC';
} else {
$order = 'DESC';
}
$r = q("SELECT `resource_id`, `id`, `filename`, type, max(`scale`) AS `scale`, `description` FROM `photo` WHERE `uid` = %d AND `album` = '%s' \n\t\t\tAND `scale` <= 4 and (photo_flags = %d or photo_flags = %d ) {$sql_extra} GROUP BY `resource_id` ORDER BY `created` {$order} LIMIT %d , %d", intval($owner_uid), dbesc($album), intvaL(PHOTO_NORMAL), intval(PHOTO_PROFILE), intval($a->pager['start']), intval($a->pager['itemspage']));
$o .= '<h3>' . $album . '</h3>';
if ($cmd === 'edit') {
if ($album !== t('Profile Photos') && $album !== 'Contact Photos' && $album !== t('Contact Photos')) {
if ($can_post) {
if ($a->get_template_engine() === 'internal') {
$album_e = template_escape($album);
} else {
$album_e = $album;
}
$edit_tpl = get_markup_template('album_edit.tpl');
$o .= replace_macros($edit_tpl, array('$nametext' => t('New album name: '), '$nickname' => $a->data['channel']['channel_address'], '$album' => $album_e, '$hexalbum' => bin2hex($album), '$submit' => t('Submit'), '$dropsubmit' => t('Delete Album')));
}
}
} else {
if ($album !== t('Profile Photos') && $album !== 'Contact Photos' && $album !== t('Contact Photos')) {
if ($can_post) {
$o .= '<div id="album-edit-link"><a href="' . $a->get_baseurl() . '/photos/' . $a->data['channel']['channel_address'] . '/album/' . bin2hex($album) . '/edit' . '">' . t('Edit Album') . '</a></div>';
}
}
}
if ($_GET['order'] === 'posted') {
$o .= '<div class="photos-upload-link" ><a href="' . $a->get_baseurl() . '/photos/' . $a->data['channel']['channel_address'] . '/album/' . bin2hex($album) . '" >' . t('Show Newest First') . '</a></div>';
} else {
$o .= '<div class="photos-upload-link" ><a href="' . $a->get_baseurl() . '/photos/' . $a->data['channel']['channel_address'] . '/album/' . bin2hex($album) . '?f=&order=posted" >' . t('Show Oldest First') . '</a></div>';
}
if ($can_post) {
$o .= '<div class="photos-upload-link" ><a href="' . $a->get_baseurl() . '/photos/' . $a->data['channel']['channel_address'] . '/upload/' . bin2hex($album) . '" >' . t('Upload New Photos') . '</a></div>';
}
$ajaxout = '';
$tpl = get_markup_template('photo_album.tpl');
if (count($r)) {
$twist = 'rotright';
$o .= "<script> var page_query = '" . $_GET['q'] . "'; var extra_args = '" . extra_query_args() . "' ; </script>";
$o .= '<div id="photo-album-contents">';
foreach ($r as $rr) {
if ($twist == 'rotright') {
$twist = 'rotleft';
} else {
开发者ID:Mauru,项目名称:red,代码行数:67,代码来源:photos.php
示例12: directory_content
function directory_content(&$a)
{
require_once "mod/proxy.php";
if (get_config('system', 'block_public') && !local_user() && !remote_user()) {
notice(t('Public access denied.') . EOL);
return;
}
$o = '';
nav_set_selected('directory');
if (x($a->data, 'search')) {
$search = notags(trim($a->data['search']));
} else {
$search = x($_GET, 'search') ? notags(trim(rawurldecode($_GET['search']))) : '';
}
$tpl = get_markup_template('directory_header.tpl');
$globaldir = '';
$gdirpath = dirname(get_config('system', 'directory_submit_url'));
if (strlen($gdirpath)) {
$globaldir = '<ul><li><div id="global-directory-link"><a href="' . zrl($gdirpath, true) . '">' . t('Global Directory') . '</a></div></li></ul>';
}
$admin = '';
$o .= replace_macros($tpl, array('$search' => $search, '$globaldir' => $globaldir, '$desc' => t('Find on this site'), '$admin' => $admin, '$finding' => strlen($search) ? '<h4>' . t('Finding: ') . "'" . $search . "'" . '</h4>' : "", '$sitedir' => t('Site Directory'), '$submit' => t('Find')));
if ($search) {
$search = dbesc($search);
}
$sql_extra = strlen($search) ? " AND MATCH (`profile`.`name`, `user`.`nickname`, `pdesc`, `locality`,`region`,`country-name`,`gender`,`marital`,`sexual`,`about`,`romance`,`work`,`education`,`pub_keywords`,`prv_keywords` ) AGAINST ('{$search}' IN BOOLEAN MODE) " : "";
$publish = get_config('system', 'publish_all') ? '' : " AND `publish` = 1 ";
$r = q("SELECT COUNT(*) AS `total` FROM `profile` LEFT JOIN `user` ON `user`.`uid` = `profile`.`uid` WHERE `is-default` = 1 {$publish} AND `user`.`blocked` = 0 {$sql_extra} ");
if (count($r)) {
$a->set_pager_total($r[0]['total']);
}
$order = " ORDER BY `name` ASC ";
$r = q("SELECT `profile`.*, `profile`.`uid` AS `profile_uid`, `user`.`nickname`, `user`.`timezone` , `user`.`page-flags` FROM `profile` LEFT JOIN `user` ON `user`.`uid` = `profile`.`uid` WHERE `is-default` = 1 {$publish} AND `user`.`blocked` = 0 {$sql_extra} {$order} LIMIT %d , %d ", intval($a->pager['start']), intval($a->pager['itemspage']));
if (count($r)) {
if (in_array('small', $a->argv)) {
$photo = 'thumb';
} else {
$photo = 'photo';
}
foreach ($r as $rr) {
$profile_link = $a->get_baseurl() . '/profile/' . (strlen($rr['nickname']) ? $rr['nickname'] : $rr['profile_uid']);
$pdesc = $rr['pdesc'] ? $rr['pdesc'] . '<br />' : '';
$details = '';
if (strlen($rr['locality'])) {
$details .= $rr['locality'];
}
if (strlen($rr['region'])) {
if (strlen($rr['locality'])) {
$details .= ', ';
}
$details .= $rr['region'];
}
if (strlen($rr['country-name'])) {
if (strlen($details)) {
$details .= ', ';
}
$details .= $rr['country-name'];
}
if (strlen($rr['dob'])) {
if (($years = age($rr['dob'], $rr['timezone'], '')) != 0) {
$details .= '<br />' . t('Age: ') . $years;
}
}
if (strlen($rr['gender'])) {
$details .= '<br />' . t('Gender: ') . $rr['gender'];
}
if ($rr['page-flags'] == PAGE_NORMAL) {
$page_type = "Personal Profile";
}
if ($rr['page-flags'] == PAGE_SOAPBOX) {
$page_type = "Fan Page";
}
if ($rr['page-flags'] == PAGE_COMMUNITY) {
$page_type = "Community Forum";
}
if ($rr['page-flags'] == PAGE_FREELOVE) {
$page_type = "Open Forum";
}
if ($rr['page-flags'] == PAGE_PRVGROUP) {
$page_type = "Private Group";
}
$profile = $rr;
if (x($profile, 'address') == 1 || x($profile, 'locality') == 1 || x($profile, 'region') == 1 || x($profile, 'postal-code') == 1 || x($profile, 'country-name') == 1) {
$location = t('Location:');
}
$gender = x($profile, 'gender') == 1 ? t('Gender:') : False;
$marital = x($profile, 'marital') == 1 ? t('Status:') : False;
$homepage = x($profile, 'homepage') == 1 ? t('Homepage:') : False;
$about = x($profile, 'about') == 1 ? t('About:') : False;
$tpl = get_markup_template('directory_item.tpl');
if ($a->theme['template_engine'] === 'internal') {
$location_e = template_escape($location);
} else {
$location_e = $location;
}
$entry = replace_macros($tpl, array('$id' => $rr['id'], '$profile_link' => $profile_link, '$photo' => proxy_url($a->get_cached_avatar_image($rr[$photo])), '$alt_text' => $rr['name'], '$name' => $rr['name'], '$details' => $pdesc . $details, '$page_type' => $page_type, '$profile' => $profile, '$location' => $location_e, '$gender' => $gender, '$pdesc' => $pdesc, '$marital' => $marital, '$homepage' => $homepage, '$about' => $about));
$arr = array('contact' => $rr, 'entry' => $entry);
call_hooks('directory_item', $arr);
unset($profile);
unset($location);
//.........这里部分代码省略.........
开发者ID:jzacman,项目名称:friendica,代码行数:101,代码来源:directory.php
示例13: render_messages
function render_messages($msg, $t)
{
$a = get_app();
$tpl = get_markup_template($t);
$rslt = '';
foreach ($msg as $rr) {
if ($rr['unknown']) {
$participants = sprintf(t("Unknown sender - %s"), $rr['from-name']);
} elseif (link_compare($rr['from-url'], $myprofile)) {
$participants = sprintf(t("You and %s"), $rr['name']);
} else {
$participants = sprintf(t("%s and You"), $rr['from-name']);
}
if ($a->theme['template_engine'] === 'internal') {
$subject_e = template_escape($rr['mailseen'] ? $rr['title'] : '<strong>' . $rr['title'] . '</strong>');
$body_e = template_escape($rr['body']);
$to_name_e = template_escape($rr['name']);
} else {
$subject_e = $rr['mailseen'] ? $rr['title'] : '<strong>' . $rr['title'] . '</strong>';
$body_e = $rr['body'];
$to_name_e = $rr['name'];
}
$rslt .= replace_macros($tpl, array('$id' => $rr['id'], '$from_name' => $participants, '$from_url' => $rr['network'] === NETWORK_DFRN ? $a->get_baseurl(true) . '/redir/' . $rr['contact-id'] : $rr['url'], '$sparkle' => ' sparkle', '$from_photo' => $rr['thumb'] ? $rr['thumb'] : $rr['from-photo'], '$subject' => $subject_e, '$delete' => t('Delete conversation'), '$body' => $body_e, '$to_name' => $to_name_e, '$date' => datetime_convert('UTC', date_default_timezone_get(), $rr['mailcreated'], t('D, d M Y - g:i A')), '$ago' => relative_date($rr['mailcreated']), '$seen' => $rr['mailseen'], '$count' => sprintf(tt('%d message', '%d messages', $rr['count']), $rr['count'])));
}
return $rslt;
}
开发者ID:vinzv,项目名称:friendica,代码行数:26,代码来源:message.php
-
The BolunHan/Krypton repository through 2021-06-03 on GitHub allows absolute pat
阅读:678|2022-07-29
-
librespeed/speedtest: Self-hosted Speedtest for HTML5 and more. Easy setup, exam
阅读:1218|2022-08-30
-
ozzieperez/packtpub-library-downloader: Script to download all your PacktPub ebo
阅读:530|2022-08-15
-
avehtari/BDA_m_demos: Bayesian Data Analysis demos for Matlab/Octave
阅读:1130|2022-08-17
-
女人怀孕后,为了有一个健康聪明的宝宝,经历各种体检、筛查。其实这些体检和筛查中的
阅读:938|2022-11-06
-
medfreeman/markdown-it-toc-and-anchor: markdown-it plugin to add a toc and ancho
阅读:1334|2022-08-18
-
sydney0zq/covid-19-detection: The implementation of A Weakly-supervised Framewor
阅读:484|2022-08-16
-
PacktPublishing/Mastering-Embedded-Linux-Programming-Third-Edition: Mastering Em
阅读:744|2022-08-15
-
离中国最远的国家是阿根廷。从太平洋直线计算,即往东线走,北京到阿根廷的布宜诺斯艾
阅读:636|2022-11-06
-
shem8/MaterialLogin: Login view with material design
阅读:725|2022-08-17
|
请发表评论