diff options
-rw-r--r-- | boot.php | 2 | ||||
-rw-r--r-- | include/bb2diaspora.php | 2 | ||||
-rw-r--r-- | include/diaspora.php | 9 | ||||
-rw-r--r-- | include/profile_update.php | 32 | ||||
-rw-r--r-- | include/queue_fn.php | 5 |
5 files changed, 32 insertions, 18 deletions
@@ -8,7 +8,7 @@ require_once("include/pgettext.php"); require_once('include/nav.php'); define ( 'FRIENDIKA_PLATFORM', 'Free Friendika'); -define ( 'FRIENDIKA_VERSION', '2.3.1141' ); +define ( 'FRIENDIKA_VERSION', '2.3.1143' ); define ( 'DFRN_PROTOCOL_VERSION', '2.21' ); define ( 'DB_UPDATE_VERSION', 1098 ); diff --git a/include/bb2diaspora.php b/include/bb2diaspora.php index ef5477f1b..d6c7994ba 100644 --- a/include/bb2diaspora.php +++ b/include/bb2diaspora.php @@ -58,7 +58,7 @@ function bb2diaspora($Text,$preserve_nl = false) { $Text = preg_replace("/\#\[url\=([$URLSearchString]*)\](.*?)\[\/url\]/ism", '[#$2]($1)', $Text); $Text = preg_replace("/\[url\=([$URLSearchString]*)\](.*?)\[\/url\]/ism", '[$2]($1)', $Text); -// $Text = preg_replace("/\[img\](.*?)\[\/img\]/", t('Image/photo: ') . '$1', $Text); + $Text = preg_replace("/\[img\](.*?)\[\/img\]/", '![' . t('image/photo') . '](' . '$1' . ')', $Text); // $Text = preg_replace("/\[img\](.*?)\[\/img\]/", t('image/photo'), $Text); // Perform MAIL Search diff --git a/include/diaspora.php b/include/diaspora.php index fa5973e7b..2379ae8e3 100644 --- a/include/diaspora.php +++ b/include/diaspora.php @@ -1376,6 +1376,14 @@ function diaspora_send_status($item,$owner,$contact,$public_batch = false) { $body = $item['body']; +/* + // We're trying to match Diaspora's split message/photo protocol but + // all the photos are displayed on D* as links and not img's - even + // though we're sending pretty much precisely what they send us when + // doing the same operation. + // Commented out for now, we'll use bb2diaspora to convert photos to markdown + // which seems to get through intact. + $cnt = preg_match_all('|\[img\](.*?)\[\/img\]|',$body,$matches,PREG_SET_ORDER); if($cnt) { foreach($matches as $mtch) { @@ -1389,6 +1397,7 @@ function diaspora_send_status($item,$owner,$contact,$public_batch = false) { $body = str_replace($detail['str'],$mtch[1],$body); } } +*/ $body = xmlify(html_entity_decode(bb2diaspora($body))); diff --git a/include/profile_update.php b/include/profile_update.php index 3828e90ed..f2a806cfd 100644 --- a/include/profile_update.php +++ b/include/profile_update.php @@ -12,8 +12,8 @@ function profile_change() { return; // $url = $a->get_baseurl() . '/profile/' . $a->user['nickname']; - // if($url && strlen(get_config('system','directory_submit_url'))) - // proc_run('php',"include/directory.php","$url"); +// if($url && strlen(get_config('system','directory_submit_url'))) +// proc_run('php',"include/directory.php","$url"); $recips = q("SELECT DISTINCT(`batch`), `id`, `name`,`network` FROM `contact` WHERE `network` = '%s' AND `uid` = %d AND `rel` != %d ORDER BY rand() ", @@ -34,24 +34,25 @@ function profile_change() { return; $profile = $r[0]; - $handle = $a->user['nickname'] . '@' . substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3); - $first = ((strpos($profile['name'],' ')) - ? trim(substr($profile['name'],0,strpos($profile['name'],' '))) : $profile['name']); - $last = (($first === $profile['name']) ? '' : trim(substr($profile['name'],strlen($first)))); - $large = $a->get_baseurl() . '/photo/custom/300/' . $profile['uid'] . '.jpg'; - $medium = $a->get_baseurl() . '/photo/custom/100/' . $profile['uid'] . '.jpg'; - $small = $a->get_baseurl() . '/photo/custom/50/' . $profile['uid'] . '.jpg'; - $searchable = (($profile['publish'] && $profile['net-publish']) ? 'true' : 'false' ); + $handle = xmlify($a->user['nickname'] . '@' . substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3)); + $first = xmlify(((strpos($profile['name'],' ')) + ? trim(substr($profile['name'],0,strpos($profile['name'],' '))) : $profile['name'])); + $last = xmlify((($first === $profile['name']) ? '' : trim(substr($profile['name'],strlen($first))))); + $large = xmlify($a->get_baseurl() . '/photo/custom/300/' . $profile['uid'] . '.jpg'); + $medium = xmlify($a->get_baseurl() . '/photo/custom/100/' . $profile['uid'] . '.jpg'); + $small = xmlify($a->get_baseurl() . '/photo/custom/50/' . $profile['uid'] . '.jpg'); + $searchable = xmlify((($profile['publish'] && $profile['net-publish']) ? 'true' : 'false' )); +// $searchable = 'true'; if($searchable === 'true') { $dob = '1000-00-00'; if(($profile['dob']) && ($profile['dob'] != '0000-00-00')) $dob = ((intval($profile['dob'])) ? intval($profile['dob']) : '1000') . '-' . datetime_convert('UTC','UTC',$profile['dob'],'m-d'); - $gender = $profile['gender']; - $about = $profile['about']; + $gender = xmlify($profile['gender']); + $about = xmlify($profile['about']); require_once('include/bbcode.php'); - $about = strip_tags(bbcode($about)); + $about = xmlify(strip_tags(bbcode($about))); $location = ''; if($profile['locality']) $location .= $profile['locality']; @@ -65,6 +66,7 @@ function profile_change() { $location .= ', '; $location .= $profile['country-name']; } + $location = xmlify($location); $tags = ''; if($profile['pub_keywords']) { $kw = str_replace(',',' ',$profile['pub_keywords']); @@ -77,7 +79,7 @@ function profile_change() { } } } - $tags = trim($tags); + $tags = xmlify(trim($tags)); } $tpl = get_markup_template('diaspora_profile.tpl'); @@ -98,8 +100,8 @@ function profile_change() { )); logger('profile_change: ' . $msg, LOGGER_ALL); - $msgtosend = diaspora_msg_build($msg,$a->user,null,$a->user['prvkey'],null,true); foreach($recips as $recip) { + $msgtosend = diaspora_msg_build($msg,$a->user,$recip,$a->user['prvkey'],null,true); add_to_queue($recip['id'],NETWORK_DIASPORA,$msgtosend,true); } } diff --git a/include/queue_fn.php b/include/queue_fn.php index 2168d42d7..3c1087f4e 100644 --- a/include/queue_fn.php +++ b/include/queue_fn.php @@ -26,7 +26,8 @@ function add_to_queue($cid,$network,$msg,$batch = false) { if($batch_queue < 1) $batch_queue = 1000; - $r = q("SELECT COUNT(*) AS `total` FROM `queue` left join `contact` WHERE ``queue`.`cid` = %d AND `contact`.`self` = 0 ", + $r = q("SELECT COUNT(*) AS `total` FROM `queue` left join `contact` ON `queue`.`cid` = `contact`.`id` + WHERE `queue`.`cid` = %d AND `contact`.`self` = 0 ", intval($cid) ); if($r && count($r)) { @@ -43,9 +44,11 @@ function add_to_queue($cid,$network,$msg,$batch = false) { q("INSERT INTO `queue` ( `cid`, `network`, `created`, `last`, `content`, `batch`) VALUES ( %d, '%s', '%s', '%s', '%s', %d) ", intval($cid), + dbesc($network), dbesc(datetime_convert()), dbesc(datetime_convert()), dbesc($msg), intval(($batch) ? 1: 0) ); + } |