add contact-id to auto-complete response to resolve duplicates
This commit is contained in:
parent
056fe0a3aa
commit
e5a7b3e24b
5 changed files with 52 additions and 5 deletions
|
@ -17,11 +17,36 @@ function diaspora2bb($s) {
|
||||||
$s = preg_replace("/\[url\=?(.*?)\]https?:\/\/vimeo.com\/([0-9]+)(.*?)\[\/url\]/ism",'[vimeo]$2[/vimeo]',$s);
|
$s = preg_replace("/\[url\=?(.*?)\]https?:\/\/vimeo.com\/([0-9]+)(.*?)\[\/url\]/ism",'[vimeo]$2[/vimeo]',$s);
|
||||||
$s = preg_replace("/\[url\=https?:\/\/vimeo.com\/([0-9]+)\](.*?)\[\/url\]/ism",'[vimeo]$1[/vimeo]',$s);
|
$s = preg_replace("/\[url\=https?:\/\/vimeo.com\/([0-9]+)\](.*?)\[\/url\]/ism",'[vimeo]$1[/vimeo]',$s);
|
||||||
$s = preg_replace("/([^\]\=]|^)(https?\:\/\/)(vimeo|youtu|www\.youtube|soundcloud)([a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)/ism", '$1[url]$2$3$4[/url]',$s);
|
$s = preg_replace("/([^\]\=]|^)(https?\:\/\/)(vimeo|youtu|www\.youtube|soundcloud)([a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)/ism", '$1[url]$2$3$4[/url]',$s);
|
||||||
|
$s = scale_diaspora_images($s);
|
||||||
return $s;
|
return $s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function scale_diaspora_images($s) {
|
||||||
|
|
||||||
|
$matches = null;
|
||||||
|
$c = preg_match_all('/\[img\](.*?)\[\/img\]/ism',$s,$matches,PREG_SET_ORDER);
|
||||||
|
if($c) {
|
||||||
|
require_once('include/Photo.php');
|
||||||
|
foreach($matches as $mtch) {
|
||||||
|
$i = fetch_url($mtch[1]);
|
||||||
|
if($i) {
|
||||||
|
$ph = new Photo($i);
|
||||||
|
if($ph->is_valid()) {
|
||||||
|
if($ph->getWidth() > 600 || $ph->getHeight() > 600) {
|
||||||
|
$ph->scaleImage(600);
|
||||||
|
$new_width = $ph->getWidth();
|
||||||
|
$new_height = $ph->getHeight();
|
||||||
|
$s = str_replace($mtch[0],'[img=' . $new_width . 'x' . $new_height. ']' . $mtch[1] . '[/img]'
|
||||||
|
. "\n" . '[url=' . $mtch[1] . ']' . t('view full size') . '[/url]' . "\n",$s);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $s;
|
||||||
|
}
|
||||||
|
|
||||||
function stripdcode_br_cb($s) {
|
function stripdcode_br_cb($s) {
|
||||||
return '[code]' . str_replace('<br />', "\n\t", $s[1]) . '[/code]';
|
return '[code]' . str_replace('<br />', "\n\t", $s[1]) . '[/code]';
|
||||||
}
|
}
|
||||||
|
|
|
@ -65,7 +65,7 @@ ACPopup.prototype._search = function(){
|
||||||
that.cont.show();
|
that.cont.show();
|
||||||
$(data.items).each(function(){
|
$(data.items).each(function(){
|
||||||
html = "<img src='{0}' height='16px' width='16px'>{1} ({2})".format(this.photo, this.name, this.nick)
|
html = "<img src='{0}' height='16px' width='16px'>{1} ({2})".format(this.photo, this.name, this.nick)
|
||||||
that.add(html, this.nick + ' - ' + this.link);
|
that.add(html, this.nick + '+' + this.id + ' - ' + this.link);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
that.cont.hide();
|
that.cont.hide();
|
||||||
|
|
12
mod/item.php
12
mod/item.php
|
@ -407,7 +407,17 @@ function item_post(&$a) {
|
||||||
else {
|
else {
|
||||||
$newname = $name;
|
$newname = $name;
|
||||||
$alias = '';
|
$alias = '';
|
||||||
if(strstr($name,'_') || strstr($name,' ')) {
|
$tagcid = 0;
|
||||||
|
if(strrpos($newname,'+'))
|
||||||
|
$tagcid = intval(substr($newname,strrpos($newname,'+') + 1));
|
||||||
|
|
||||||
|
if($tagcid) {
|
||||||
|
$r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1",
|
||||||
|
intval($tagcid),
|
||||||
|
intval($profile_uid)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
elseif(strstr($name,'_') || strstr($name,' ')) {
|
||||||
$newname = str_replace('_',' ',$name);
|
$newname = str_replace('_',' ',$name);
|
||||||
$r = q("SELECT * FROM `contact` WHERE `name` = '%s' AND `uid` = %d LIMIT 1",
|
$r = q("SELECT * FROM `contact` WHERE `name` = '%s' AND `uid` = %d LIMIT 1",
|
||||||
dbesc($newname),
|
dbesc($newname),
|
||||||
|
|
|
@ -408,7 +408,18 @@ function photos_post(&$a) {
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$newname = $name;
|
$newname = $name;
|
||||||
if(strstr($name,'_') || strstr($name,' ')) {
|
$alias = '';
|
||||||
|
$tagcid = 0;
|
||||||
|
if(strrpos($newname,'+'))
|
||||||
|
$tagcid = intval(substr($newname,strrpos($newname,'+') + 1));
|
||||||
|
|
||||||
|
if($tagcid) {
|
||||||
|
$r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1",
|
||||||
|
intval($tagcid),
|
||||||
|
intval($profile_uid)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
elseif(strstr($name,'_') || strstr($name,' ')) {
|
||||||
$newname = str_replace('_',' ',$name);
|
$newname = str_replace('_',' ',$name);
|
||||||
$r = q("SELECT * FROM `contact` WHERE `name` = '%s' AND `uid` = %d LIMIT 1",
|
$r = q("SELECT * FROM `contact` WHERE `name` = '%s' AND `uid` = %d LIMIT 1",
|
||||||
dbesc($newname),
|
dbesc($newname),
|
||||||
|
|
|
@ -96,10 +96,11 @@ function search_content(&$a) {
|
||||||
// Only public wall posts can be shown
|
// Only public wall posts can be shown
|
||||||
// OR your own posts if you are a logged in member
|
// OR your own posts if you are a logged in member
|
||||||
|
|
||||||
|
$escaped_search = str_replace(array('[',']'),array('\\[','\\]'),$search);
|
||||||
|
|
||||||
// $s_bool = sprintf("AND MATCH (`item`.`body`) AGAINST ( '%s' IN BOOLEAN MODE )", dbesc($search));
|
// $s_bool = sprintf("AND MATCH (`item`.`body`) AGAINST ( '%s' IN BOOLEAN MODE )", dbesc($search));
|
||||||
$s_regx = sprintf("AND ( `item`.`body` REGEXP '%s' OR `item`.`tag` REGEXP '%s' )",
|
$s_regx = sprintf("AND ( `item`.`body` REGEXP '%s' OR `item`.`tag` REGEXP '%s' )",
|
||||||
dbesc($search), dbesc('\\]' . $search . '\\['));
|
dbesc($escaped_search), dbesc('\\]' . $escaped_search . '\\['));
|
||||||
|
|
||||||
// if(mb_strlen($search) >= 3)
|
// if(mb_strlen($search) >= 3)
|
||||||
// $search_alg = $s_bool;
|
// $search_alg = $s_bool;
|
||||||
|
|
Loading…
Reference in a new issue