mirror of
https://git.friendi.ca/friendica/friendica.git
synced 2025-06-17 00:45:14 +02:00
Merge remote branch 'upstream/master'
Conflicts: include/bbcode.php
This commit is contained in:
commit
0409b5cdba
67 changed files with 870 additions and 285 deletions
|
@ -314,7 +314,7 @@ function scrape_feed($url) {
|
|||
*
|
||||
* PROBE_DIASPORA has a bias towards returning Diaspora information
|
||||
* while PROBE_NORMAL has a bias towards dfrn/zot - in the case where
|
||||
* an address (such as a Friendika address) supports more than one type
|
||||
* an address (such as a Friendica address) supports more than one type
|
||||
* of network.
|
||||
*
|
||||
*/
|
||||
|
|
|
@ -157,7 +157,7 @@ function contact_select($selname, $selclass, $preselected = false, $size = 4, $p
|
|||
|
||||
$o = '';
|
||||
|
||||
// When used for private messages, we limit correspondence to mutual DFRN/Friendika friends and the selector
|
||||
// When used for private messages, we limit correspondence to mutual DFRN/Friendica friends and the selector
|
||||
// to one recipient. By default our selector allows multiple selects amongst all contacts.
|
||||
|
||||
$sql_extra = '';
|
||||
|
|
|
@ -183,7 +183,7 @@
|
|||
'updated' => api_date(null),
|
||||
'atom_updated' => datetime_convert('UTC','UTC','now',ATOM_TIME),
|
||||
'language' => $user_info['language'],
|
||||
'logo' => $a->get_baseurl()."/images/friendika-32.png",
|
||||
'logo' => $a->get_baseurl()."/images/friendica-32.png",
|
||||
);
|
||||
|
||||
return $arr;
|
||||
|
@ -457,7 +457,49 @@
|
|||
return null;
|
||||
}
|
||||
|
||||
// TODO - media uploads
|
||||
/*Waitman Gobble Mod*/
|
||||
function api_statuses_mediap(&$a, $type) {
|
||||
if (local_user()===false) {
|
||||
logger('api_statuses_update: no user');
|
||||
return false;
|
||||
}
|
||||
$user_info = api_get_user($a);
|
||||
|
||||
$_REQUEST['type'] = 'wall';
|
||||
$_REQUEST['profile_uid'] = local_user();
|
||||
$_REQUEST['api_source'] = true;
|
||||
$txt = urldecode(requestdata('status'));
|
||||
|
||||
require_once('library/HTMLPurifier.auto.php');
|
||||
require_once('include/html2bbcode.php');
|
||||
|
||||
if((strpos($txt,'<') !== false) || (strpos($txt,'>') !== false)) {
|
||||
$txt = html2bb_video($txt);
|
||||
$config = HTMLPurifier_Config::createDefault();
|
||||
$config->set('Cache.DefinitionImpl', null);
|
||||
$purifier = new HTMLPurifier($config);
|
||||
$txt = $purifier->purify($txt);
|
||||
}
|
||||
$txt = html2bbcode($txt);
|
||||
|
||||
$a->argv[1]=$user_info['screen_name']; //should be set to username?
|
||||
|
||||
$_REQUEST['hush']='yeah'; //tell wall_upload function to return img info instead of echo
|
||||
require_once('mod/wall_upload.php');
|
||||
$bebop = wall_upload_post($a);
|
||||
|
||||
//now that we have the img url in bbcode we can add it to the status and insert the wall item.
|
||||
$_REQUEST['body']=$txt."\n\n".$bebop;
|
||||
require_once('mod/item.php');
|
||||
item_post($a);
|
||||
|
||||
// this should output the last post (the one we just posted).
|
||||
return api_status_show($a,$type);
|
||||
}
|
||||
api_register_func('api/statuses/mediap','api_statuses_mediap', true);
|
||||
/*Waitman Gobble Mod*/
|
||||
|
||||
|
||||
function api_statuses_update(&$a, $type) {
|
||||
if (local_user()===false) {
|
||||
logger('api_statuses_update: no user');
|
||||
|
@ -743,7 +785,7 @@
|
|||
if (local_user()===false) return false;
|
||||
|
||||
$user_info = api_get_user($a);
|
||||
// in friendika starred item are private
|
||||
// in friendica starred item are private
|
||||
// return favorites only for self
|
||||
logger('api_favorites: self:' . $user_info['self']);
|
||||
|
||||
|
@ -916,7 +958,7 @@
|
|||
function api_statusnet_config(&$a,$type) {
|
||||
$name = $a->config['sitename'];
|
||||
$server = $a->get_hostname();
|
||||
$logo = $a->get_baseurl() . '/images/friendika-64.png';
|
||||
$logo = $a->get_baseurl() . '/images/friendica-64.png';
|
||||
$email = $a->config['admin_email'];
|
||||
$closed = (($a->config['register_policy'] == REGISTER_CLOSED) ? 'true' : 'false');
|
||||
$private = (($a->config['system']['block_public']) ? 'true' : 'false');
|
||||
|
|
|
@ -14,8 +14,8 @@ require_once('include/html2bbcode.php');
|
|||
function diaspora2bb($s) {
|
||||
|
||||
// for testing purposes: Collect raw markdown articles
|
||||
$file = tempnam("/tmp/friendica/", "markdown");
|
||||
file_put_contents($file, $s);
|
||||
// $file = tempnam("/tmp/friendica/", "markdown");
|
||||
// file_put_contents($file, $s);
|
||||
|
||||
$s = html_entity_decode($s,ENT_COMPAT,'UTF-8');
|
||||
|
||||
|
|
|
@ -194,7 +194,11 @@ function bbcode($Text,$preserve_nl = false) {
|
|||
// Check for [quote] text
|
||||
// handle nested quotes
|
||||
$endlessloop = 0;
|
||||
<<<<<<< HEAD
|
||||
while ((strpos($Text, "[/quote]") !== false) and (strpos($Text, "[quote]") !== false) and (++$endlessloop < 20))
|
||||
=======
|
||||
while (strpos($Text, "[/quote]") !== false and strpos($Text, "[quote]") !== false and (++$endlessloop < 20))
|
||||
>>>>>>> upstream/master
|
||||
$Text = preg_replace("/\[quote\](.*?)\[\/quote\]/ism","$QuoteLayout", $Text);
|
||||
|
||||
// Check for [quote=Author] text
|
||||
|
@ -203,7 +207,11 @@ function bbcode($Text,$preserve_nl = false) {
|
|||
|
||||
// handle nested quotes
|
||||
$endlessloop = 0;
|
||||
<<<<<<< HEAD
|
||||
while ((strpos($Text, "[/quote]")!== false) and (strpos($Text, "[quote=") !== false) and (++$endlessloop < 20))
|
||||
=======
|
||||
while (strpos($Text, "[/quote]") !== false and strpos($Text, "[quote=") !== false and (++$endlessloop < 20))
|
||||
>>>>>>> upstream/master
|
||||
$Text = preg_replace("/\[quote=[\"\']*(.*?)[\"\']*\](.*?)\[\/quote\]/ism",
|
||||
"<blockquote><strong>" . $t_wrote . "</strong> $2</blockquote>",
|
||||
$Text);
|
||||
|
|
|
@ -451,7 +451,7 @@ function diaspora_request($importer,$xml) {
|
|||
// perhaps we were already sharing with this person. Now they're sharing with us.
|
||||
// That makes us friends.
|
||||
|
||||
if($contact['rel'] == CONTACT_IS_FOLLOWER) {
|
||||
if($contact['rel'] == CONTACT_IS_FOLLOWER && $importer['page-flags'] != PAGE_COMMUNITY) {
|
||||
q("UPDATE `contact` SET `rel` = %d, `writable` = 1 WHERE `id` = %d AND `uid` = %d LIMIT 1",
|
||||
intval(CONTACT_IS_FRIEND),
|
||||
intval($contact['id']),
|
||||
|
@ -619,6 +619,18 @@ function diaspora_request($importer,$xml) {
|
|||
return;
|
||||
}
|
||||
|
||||
function diaspora_post_allow($importer,$contact) {
|
||||
if(($contact['blocked']) || ($contact['readonly']))
|
||||
return false;
|
||||
if($contact['rel'] == CONTACT_IS_SHARING || $contact['rel'] == CONTACT_IS_FRIEND)
|
||||
return true;
|
||||
if($contact['rel'] == CONTACT_IS_FOLLOWER)
|
||||
if($importer['page-flags'] == PAGE_COMMUNITY)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
function diaspora_post($importer,$xml) {
|
||||
|
||||
$a = get_app();
|
||||
|
@ -629,7 +641,7 @@ function diaspora_post($importer,$xml) {
|
|||
if(! $contact)
|
||||
return;
|
||||
|
||||
if(($contact['rel'] == CONTACT_IS_FOLLOWER) || ($contact['blocked']) || ($contact['readonly'])) {
|
||||
if(! diaspora_post_allow($importer,$contact)) {
|
||||
logger('diaspora_post: Ignoring this author.');
|
||||
return 202;
|
||||
}
|
||||
|
@ -748,7 +760,7 @@ function diaspora_reshare($importer,$xml) {
|
|||
if(! $contact)
|
||||
return;
|
||||
|
||||
if(($contact['rel'] == CONTACT_IS_FOLLOWER) || ($contact['blocked']) || ($contact['readonly'])) {
|
||||
if(! diaspora_post_allow($importer,$contact)) {
|
||||
logger('diaspora_reshare: Ignoring this author: ' . $diaspora_handle . ' ' . print_r($xml,true));
|
||||
return 202;
|
||||
}
|
||||
|
@ -900,7 +912,7 @@ function diaspora_asphoto($importer,$xml) {
|
|||
if(! $contact)
|
||||
return;
|
||||
|
||||
if(($contact['rel'] == CONTACT_IS_FOLLOWER) || ($contact['blocked']) || ($contact['readonly'])) {
|
||||
if(! diaspora_post_allow($importer,$contact)) {
|
||||
logger('diaspora_asphoto: Ignoring this author.');
|
||||
return 202;
|
||||
}
|
||||
|
@ -1001,7 +1013,7 @@ function diaspora_comment($importer,$xml,$msg) {
|
|||
return;
|
||||
}
|
||||
|
||||
if(($contact['rel'] == CONTACT_IS_FOLLOWER) || ($contact['blocked']) || ($contact['readonly'])) {
|
||||
if(! diaspora_post_allow($importer,$contact)) {
|
||||
logger('diaspora_comment: Ignoring this author.');
|
||||
return 202;
|
||||
}
|
||||
|
@ -1446,7 +1458,7 @@ function diaspora_photo($importer,$xml,$msg) {
|
|||
return;
|
||||
}
|
||||
|
||||
if(($contact['rel'] == CONTACT_IS_FOLLOWER) || ($contact['blocked']) || ($contact['readonly'])) {
|
||||
if(! diaspora_post_allow($importer,$contact)) {
|
||||
logger('diaspora_photo: Ignoring this author.');
|
||||
return 202;
|
||||
}
|
||||
|
@ -1503,7 +1515,7 @@ function diaspora_like($importer,$xml,$msg) {
|
|||
return;
|
||||
}
|
||||
|
||||
if(($contact['rel'] == CONTACT_IS_FOLLOWER) || ($contact['blocked']) || ($contact['readonly'])) {
|
||||
if(! diaspora_post_allow($importer,$contact)) {
|
||||
logger('diaspora_like: Ignoring this author.');
|
||||
return 202;
|
||||
}
|
||||
|
|
|
@ -28,18 +28,18 @@ function notification($params) {
|
|||
$subject = sprintf( t('New mail received at %s'),$sitename);
|
||||
|
||||
$preamble = sprintf( t('%s sent you a new private message at %s.'),$params['source_name'],$sitename);
|
||||
$epreamble = sprintf( t('%s sent you a private message.'),'[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]');
|
||||
$epreamble = sprintf( t('%s sent you %s.'),'[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('a private message') . '[/url]');
|
||||
$sitelink = t('Please visit %s to view and/or reply to your private messages.');
|
||||
$tsitelink = sprintf( $sitelink, $siteurl . '/message' );
|
||||
$hsitelink = sprintf( $sitelink, '<a href="' . $siteurl . '/message">' . $sitename . '</a>');
|
||||
$itemlink = $siteurl . '/message';
|
||||
$tsitelink = sprintf( $sitelink, $siteurl . '/message/' . $params['item']['id'] );
|
||||
$hsitelink = sprintf( $sitelink, '<a href="' . $siteurl . '/message/' . $params['item']['id'] . '">' . $sitename . '</a>');
|
||||
$itemlink = $siteurl . '/message/' . $params['item']['id'];
|
||||
}
|
||||
|
||||
if($params['type'] == NOTIFY_COMMENT) {
|
||||
|
||||
$subject = sprintf( t('%s commented on an item at %s'), $params['source_name'], $sitename);
|
||||
$preamble = sprintf( t('%s commented on an item/conversation you have been following.'), $params['source_name']);
|
||||
$epreamble = sprintf( t('%s commented on an item/conversation you have been following.'), '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]');
|
||||
$epreamble = sprintf( t('%s commented in %s.'), '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('a watched conversation') . '[/url]');
|
||||
|
||||
$sitelink = t('Please visit %s to view and/or reply to the conversation.');
|
||||
$tsitelink = sprintf( $sitelink, $siteurl );
|
||||
|
@ -49,7 +49,7 @@ function notification($params) {
|
|||
|
||||
if($params['type'] == NOTIFY_WALL) {
|
||||
$preamble = $subject = sprintf( t('%s posted to your profile wall at %s') , $params['source_name'], $sitename);
|
||||
$epreamble = sprintf( t('%s posted to your profile wall') , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]');
|
||||
$epreamble = sprintf( t('%s posted to %s') , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('your profile wall.') . '[/url]');
|
||||
|
||||
$sitelink = t('Please visit %s to view and/or reply to the conversation.');
|
||||
$tsitelink = sprintf( $sitelink, $siteurl );
|
||||
|
@ -59,7 +59,7 @@ function notification($params) {
|
|||
|
||||
if($params['type'] == NOTIFY_TAGSELF) {
|
||||
$preamble = $subject = sprintf( t('%s tagged you at %s') , $params['source_name'], $sitename);
|
||||
$epreamble = sprintf( t('%s tagged you') , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]');
|
||||
$epreamble = sprintf( t('%s %s.') , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=' . $params['link'] . ']' . t('tagged you') . '[/url]');
|
||||
|
||||
$sitelink = t('Please visit %s to view and/or reply to the conversation.');
|
||||
$tsitelink = sprintf( $sitelink, $siteurl );
|
||||
|
@ -69,7 +69,7 @@ function notification($params) {
|
|||
|
||||
if($params['type'] == NOTIFY_TAGSHARE) {
|
||||
$preamble = $subject = sprintf( t('%s tagged your post at %s') , $params['source_name'], $sitename);
|
||||
$epreamble = sprintf( t('%s tagged your post') , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]');
|
||||
$epreamble = sprintf( t('%s tagged %s') , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]', '[url=$itemlink]' . t('your post') . '[/url]' );
|
||||
|
||||
$sitelink = t('Please visit %s to view and/or reply to the conversation.');
|
||||
$tsitelink = sprintf( $sitelink, $siteurl );
|
||||
|
@ -80,7 +80,7 @@ function notification($params) {
|
|||
if($params['type'] == NOTIFY_INTRO) {
|
||||
$subject = sprintf( t('Introduction received at %s'), $sitename);
|
||||
$preamble = sprintf( t('You\'ve received an introduction from \'%s\' at %s'), $params['source_name'], $sitename);
|
||||
$epreamble = sprintf( t('You\'ve received an introduction from %s'), '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]');
|
||||
$epreamble = sprintf( t('You\'ve received %s from %s.'), '[url=$itemlink]' . t('an introduction') . '[/url]' , '[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]');
|
||||
$body = sprintf( t('You may visit their profile at %s'),$params['source_link']);
|
||||
|
||||
$sitelink = t('Please visit %s to approve or reject the introduction.');
|
||||
|
@ -92,7 +92,8 @@ function notification($params) {
|
|||
if($params['type'] == NOTIFY_SUGGEST) {
|
||||
$subject = sprintf( t('Friend suggestion received at %s'), $sitename);
|
||||
$preamble = sprintf( t('You\'ve received a friend suggestion from \'%s\' at %s'), $params['source_name'], $sitename);
|
||||
$epreamble = sprintf( t('You\'ve received a friend suggestion for %s from %s'),
|
||||
$epreamble = sprintf( t('You\'ve received %s for %s from %s.'),
|
||||
'[url=$itemlink]' . t('a friend suggestion') . '[/url]',
|
||||
'[url=' . $params['item']['url'] . ']' . $params['item']['name'] . '[/url]',
|
||||
'[url=' . $params['source_link'] . ']' . $params['source_name'] . '[/url]');
|
||||
$body = t('Name:') . ' ' . $params['item']['name'] . "\n";
|
||||
|
@ -115,15 +116,27 @@ function notification($params) {
|
|||
|
||||
require_once('include/html2bbcode.php');
|
||||
|
||||
do {
|
||||
$dups = false;
|
||||
$hash = random_string();
|
||||
$r = q("SELECT `id` FROM `notify` WHERE `hash` = '%s' LIMIT 1",
|
||||
dbesc($hash));
|
||||
if(count($r))
|
||||
$dups = true;
|
||||
} while($dups == true);
|
||||
|
||||
|
||||
|
||||
|
||||
// create notification entry in DB
|
||||
|
||||
$r = q("insert into notify (name,url,photo,date,msg,uid,link,type,verb,otype)
|
||||
$r = q("insert into notify (hash,name,url,photo,date,uid,link,type,verb,otype)
|
||||
values('%s','%s','%s','%s','%s',%d,'%s',%d,'%s','%s')",
|
||||
dbesc($hash),
|
||||
dbesc($params['source_name']),
|
||||
dbesc($params['source_link']),
|
||||
dbesc($params['source_photo']),
|
||||
dbesc(datetime_convert()),
|
||||
dbesc($epreamble),
|
||||
intval($params['uid']),
|
||||
dbesc($itemlink),
|
||||
intval($params['type']),
|
||||
|
@ -131,6 +144,25 @@ function notification($params) {
|
|||
dbesc($params['otype'])
|
||||
);
|
||||
|
||||
$r = q("select id from notify where hash = '%s' and uid = %d limit 1",
|
||||
dbesc($hash),
|
||||
intval($params['uid'])
|
||||
);
|
||||
if($r)
|
||||
$notify_id = $r[0]['id'];
|
||||
else
|
||||
return;
|
||||
|
||||
$itemlink = $a->get_baseurl() . '/notify/view/' . $notify_id;
|
||||
$msg = replace_macros($epreamble,array('$itemlink' => $itemlink));
|
||||
$r = q("update notify set msg = '%s' where id = %d and uid = %d limit 1",
|
||||
dbesc($msg),
|
||||
intval($notify_id),
|
||||
intval($params['uid'])
|
||||
);
|
||||
|
||||
|
||||
|
||||
// send email notification if notification preferences permit
|
||||
|
||||
require_once('bbcode.php');
|
||||
|
|
|
@ -204,7 +204,7 @@ function html2bbcode($message)
|
|||
|
||||
node2bbcode($doc, 'a', array('href'=>'/(.+)/'), '[url=$1]', '[/url]');
|
||||
|
||||
node2bbcode($doc, 'img', array('src'=>'/(.+)/', 'width'=>'/(\d+)/', 'height'=>'/(\d+)/'), '[img$2x$3]$1', '[/img]');
|
||||
node2bbcode($doc, 'img', array('src'=>'/(.+)/', 'width'=>'/(\d+)/', 'height'=>'/(\d+)/'), '[img=$2x$3]$1', '[/img]');
|
||||
node2bbcode($doc, 'img', array('src'=>'/(.+)/'), '[img]$1', '[/img]');
|
||||
|
||||
|
||||
|
|
|
@ -1551,8 +1551,9 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0)
|
|||
}
|
||||
|
||||
$force_parent = false;
|
||||
if($contact['network'] === NETWORK_OSTATUS) {
|
||||
$force_parent = true;
|
||||
if($contact['network'] === NETWORK_OSTATUS || stristr($contact['url'],'twitter.com')) {
|
||||
if($contact['network'] === NETWORK_OSTATUS)
|
||||
$force_parent = true;
|
||||
if(strlen($datarray['title']))
|
||||
unset($datarray['title']);
|
||||
$r = q("UPDATE `item` SET `last-child` = 0, `changed` = '%s' WHERE `parent-uri` = '%s' AND `uid` = %d",
|
||||
|
@ -1700,7 +1701,7 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0)
|
|||
if(! is_array($contact))
|
||||
return;
|
||||
|
||||
if($contact['network'] === NETWORK_OSTATUS || stristr($permalink,'twitter.com')) {
|
||||
if($contact['network'] === NETWORK_OSTATUS || stristr($contact['url'],'twitter.com')) {
|
||||
if(strlen($datarray['title']))
|
||||
unset($datarray['title']);
|
||||
$datarray['last-child'] = 1;
|
||||
|
@ -2040,13 +2041,12 @@ function local_delivery($importer,$data) {
|
|||
}
|
||||
|
||||
if($is_reply) {
|
||||
|
||||
$community = false;
|
||||
|
||||
if($importer['page-flags'] == PAGE_COMMUNITY) {
|
||||
$sql_extra = '';
|
||||
$community = true;
|
||||
logger('local_delivery: community reply');
|
||||
logger('local_delivery: possible community reply');
|
||||
}
|
||||
else
|
||||
$sql_extra = " and contact.self = 1 and item.wall = 1 ";
|
||||
|
@ -2054,7 +2054,9 @@ function local_delivery($importer,$data) {
|
|||
// was the top-level post for this reply written by somebody on this site?
|
||||
// Specifically, the recipient?
|
||||
|
||||
$r = q("select `item`.`id`, `item`.`uri`, `item`.`tag`,
|
||||
$is_a_remote_comment = false;
|
||||
|
||||
$r = q("select `item`.`id`, `item`.`uri`, `item`.`tag`, `item`.`forum_mode`,`item`.`origin`,`item`.`wall`,
|
||||
`contact`.`name`, `contact`.`url`, `contact`.`thumb` from `item`
|
||||
LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
|
||||
WHERE `item`.`uri` = '%s' AND `item`.`parent-uri` = '%s'
|
||||
|
@ -2065,16 +2067,29 @@ function local_delivery($importer,$data) {
|
|||
dbesc($parent_uri),
|
||||
intval($importer['importer_uid'])
|
||||
);
|
||||
if($r && count($r))
|
||||
$is_a_remote_comment = true;
|
||||
|
||||
if($r && count($r)) {
|
||||
// Does this have the characteristics of a community comment?
|
||||
// If it's a reply to a wall post on a community page it's a
|
||||
// valid community comment. Also forum_mode makes it valid for sure.
|
||||
// If neither, it's not.
|
||||
|
||||
if($is_a_remote_comment && $community) {
|
||||
if((! $r[0]['forum_mode']) && (! $r[0]['wall'])) {
|
||||
$is_a_remote_comment = false;
|
||||
logger('local_delivery: not a community reply');
|
||||
}
|
||||
}
|
||||
|
||||
if($is_a_remote_comment) {
|
||||
logger('local_delivery: received remote comment');
|
||||
$is_like = false;
|
||||
// remote reply to our post. Import and then notify everybody else.
|
||||
$datarray = get_atom_elements($feed,$item);
|
||||
|
||||
|
||||
// TODO: make this next part work against both delivery threads of a community post
|
||||
// TODO: make this next part work against both delivery threads of a community post
|
||||
|
||||
// if((! link_compare($datarray['author-link'],$importer['url'])) && (! $community)) {
|
||||
// logger('local_delivery: received relay claiming to be from ' . $importer['url'] . ' however comment author url is ' . $datarray['author-link'] );
|
||||
|
@ -2188,6 +2203,7 @@ function local_delivery($importer,$data) {
|
|||
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
// NOTREACHED
|
||||
}
|
||||
|
|
|
@ -116,7 +116,8 @@ function nav(&$a) {
|
|||
if($_SESSION['page_flags'] == PAGE_NORMAL) {
|
||||
$nav['introductions'] = array('notifications/intros', t('Introductions'), "", t('Friend Requests'));
|
||||
$nav['notifications'] = array('notifications', t('Notifications'), "", t('Notifications'));
|
||||
$nav['notifications']['all']=array('notifications/network', t('See all notifications', "", ""));
|
||||
$nav['notifications']['all']=array('notifications/system', t('See all notifications'), "", "");
|
||||
$nav['notifications']['mark'] = array('', t('Mark all system notifications seen'), '','');
|
||||
|
||||
}
|
||||
|
||||
|
@ -148,7 +149,7 @@ function nav(&$a) {
|
|||
$banner = get_config('system','banner');
|
||||
|
||||
if($banner === false)
|
||||
$banner .= '<a href="http://friendica.com"><img id="logo-img" src="images/friendika-32.png" alt="logo" /></a><span id="logo-text"><a href="http://friendica.com">Friendica</a></span>';
|
||||
$banner .= '<a href="http://friendica.com"><img id="logo-img" src="images/friendica-32.png" alt="logo" /></a><span id="logo-text"><a href="http://friendica.com">Friendica</a></span>';
|
||||
|
||||
|
||||
$tpl = get_markup_template('nav.tpl');
|
||||
|
|
|
@ -194,8 +194,8 @@ function poller_run($argv, $argc){
|
|||
$update = true;
|
||||
break;
|
||||
}
|
||||
// if((! $update) && (! $force))
|
||||
// continue;
|
||||
if((! $update) && (! $force))
|
||||
continue;
|
||||
}
|
||||
|
||||
// Check to see if we are running out of memory - if so spawn a new process and kill this one
|
||||
|
@ -349,7 +349,7 @@ function poller_run($argv, $argc){
|
|||
|| ($contact['network'] === NETWORK_DIASPORA)
|
||||
|| ($contact['network'] === NETWORK_FEED) ) {
|
||||
|
||||
// Upgrading DB fields from an older Friendika version
|
||||
// Upgrading DB fields from an older Friendica version
|
||||
// Will only do this once per notify-enabled OStatus contact
|
||||
// or if relationship changes
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
var $done = false;
|
||||
var $d = false;
|
||||
var $lang = null;
|
||||
|
||||
var $debug=false;
|
||||
|
||||
private function _preg_error(){
|
||||
switch(preg_last_error()){
|
||||
|
@ -160,6 +160,30 @@
|
|||
return $s;
|
||||
}
|
||||
|
||||
private function _str_replace($str){
|
||||
#$this->search,$this->replace,
|
||||
$searchs = $this->search;
|
||||
foreach($searchs as $search){
|
||||
$search = "|".preg_quote($search)."(\|[a-zA-Z0-9_]*)*|";
|
||||
$m = array();
|
||||
if (preg_match_all($search, $str,$m)){
|
||||
foreach ($m[0] as $match){
|
||||
$toks = explode("|",$match);
|
||||
$val = $this->_get_var($toks[0]);
|
||||
for($k=1; $k<count($toks); $k++){
|
||||
$func = $toks[$k];
|
||||
if (function_exists($func)) $val = $func($val);
|
||||
}
|
||||
if (count($toks)>1){
|
||||
$str = str_replace( $match, $val, $str);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
return str_replace($this->search,$this->replace, $str);
|
||||
}
|
||||
|
||||
|
||||
public function replace($s, $r) {
|
||||
$this->r = $r;
|
||||
|
@ -180,7 +204,7 @@
|
|||
$os = ""; $count=0;
|
||||
while($os!=$s && $count<10){
|
||||
$os=$s; $count++;
|
||||
$s = str_replace($this->search,$this->replace, $s);
|
||||
$s = $this->_str_replace($s);
|
||||
}
|
||||
return template_unescape($s);
|
||||
}
|
||||
|
|
|
@ -675,12 +675,24 @@ function linkify($s) {
|
|||
* @Parameter: string $s
|
||||
*
|
||||
* Returns string
|
||||
*
|
||||
* It is expected that this function will be called using HTML text.
|
||||
* We will escape text between HTML pre and code blocks from being
|
||||
* processed.
|
||||
*
|
||||
* At a higher level, the bbcode [nosmile] tag can be used to prevent this
|
||||
* function from being executed by the prepare_text() routine when preparing
|
||||
* bbcode source for HTML display
|
||||
*
|
||||
*/
|
||||
|
||||
if(! function_exists('smilies')) {
|
||||
function smilies($s, $sample = false) {
|
||||
$a = get_app();
|
||||
|
||||
$s = preg_replace_callback('/<pre>(.*?)<\/pre>/ism','smile_encode',$s);
|
||||
$s = preg_replace_callback('/<code>(.*?)<\/code>/ism','smile_encode',$s);
|
||||
|
||||
$texts = array(
|
||||
'<3',
|
||||
'</3',
|
||||
|
@ -759,7 +771,7 @@ function smilies($s, $sample = false) {
|
|||
'<img src="' . $a->get_baseurl() . '/images/smiley-facepalm.gif" alt=":facepalm" />',
|
||||
'<img src="' . $a->get_baseurl() . '/images/smiley-bangheaddesk.gif" alt=":headdesk" />',
|
||||
'<a href="http://project.friendika.com">~friendika <img src="' . $a->get_baseurl() . '/images/friendika-16.png" alt="~friendika" /></a>',
|
||||
'<a href="http://friendica.com">~friendica <img src="' . $a->get_baseurl() . '/images/friendika-16.png" alt="~friendica" /></a>',
|
||||
'<a href="http://friendica.com">~friendica <img src="' . $a->get_baseurl() . '/images/friendica-16.png" alt="~friendica" /></a>',
|
||||
'<a href="http://diasporafoundation.org">Diaspora<img src="' . $a->get_baseurl() . '/images/diaspora.png" alt="Diaspora*" /></a>',
|
||||
|
||||
);
|
||||
|
@ -776,11 +788,23 @@ function smilies($s, $sample = false) {
|
|||
else {
|
||||
$s = str_replace($params['texts'],$params['icons'],$params['string']);
|
||||
}
|
||||
|
||||
|
||||
$s = preg_replace_callback('/<pre>(.*?)<\/pre>/ism','smile_decode',$s);
|
||||
$s = preg_replace_callback('/<code>(.*?)<\/code>/ism','smile_decode',$s);
|
||||
|
||||
return $s;
|
||||
|
||||
}}
|
||||
|
||||
function smile_encode($m) {
|
||||
return(str_replace($m[1],base64url_encode($m[1]),$m[0]));
|
||||
}
|
||||
|
||||
function smile_decode($m) {
|
||||
return(str_replace($m[1],base64url_decode($m[1]),$m[0]));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
if(! function_exists('day_translate')) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue