diff options
-rw-r--r-- | boot.php | 2 | ||||
-rw-r--r-- | include/diaspora.php | 14 | ||||
-rw-r--r-- | js/acl.js | 10 |
3 files changed, 19 insertions, 7 deletions
@@ -9,7 +9,7 @@ require_once('include/nav.php'); require_once('include/cache.php'); define ( 'FRIENDICA_PLATFORM', 'Friendica'); -define ( 'FRIENDICA_VERSION', '2.3.1201' ); +define ( 'FRIENDICA_VERSION', '2.3.1202' ); define ( 'DFRN_PROTOCOL_VERSION', '2.22' ); define ( 'DB_UPDATE_VERSION', 1112 ); diff --git a/include/diaspora.php b/include/diaspora.php index fdf756610..d1e975a89 100644 --- a/include/diaspora.php +++ b/include/diaspora.php @@ -69,7 +69,7 @@ function diaspora_dispatch($importer,$msg) { $ret = diaspora_retraction($importer,$xmlbase->retraction,$msg); } elseif($xmlbase->signed_retraction) { - $ret = diaspora_signed_retraction($importer,$xmlbase->retraction,$msg); + $ret = diaspora_signed_retraction($importer,$xmlbase->signed_retraction,$msg); } elseif($xmlbase->photo) { $ret = diaspora_photo($importer,$xmlbase->photo,$msg); @@ -1569,6 +1569,7 @@ EOT; function diaspora_retraction($importer,$xml) { + $guid = notags(unxmlify($xml->guid)); $diaspora_handle = notags(unxmlify($xml->diaspora_handle)); $type = notags(unxmlify($xml->type)); @@ -1600,7 +1601,8 @@ function diaspora_retraction($importer,$xml) { // NOTREACHED } -function diaspora_signed_retraction($importer,$xml) { +function diaspora_signed_retraction($importer,$xml,$msg) { + $guid = notags(unxmlify($xml->target_guid)); $diaspora_handle = notags(unxmlify($xml->sender_handle)); @@ -1608,8 +1610,10 @@ function diaspora_signed_retraction($importer,$xml) { $sig = notags(unxmlify($xml->target_author_signature)); $contact = diaspora_get_contact_by_handle($importer['uid'],$diaspora_handle); - if(! $contact) + if(! $contact) { + logger('diaspora_signed_retraction: no contact'); return; + } // this may not yet work for comments. Need to see how the relaying works // and figure out who signs it. @@ -1628,7 +1632,7 @@ function diaspora_signed_retraction($importer,$xml) { if($type === 'StatusMessage') { $r = q("select * from item where guid = '%s' and uid = %d limit 1", - dbesc('guid'), + dbesc($guid), intval($importer['uid']) ); if(count($r)) { @@ -1640,6 +1644,8 @@ function diaspora_signed_retraction($importer,$xml) { } } } + else + logger('diaspora_signed_retraction: unknown type: ' . $type); return 202; // NOTREACHED @@ -200,8 +200,14 @@ ACL.prototype.update_view = function(){ $(that.group_uids[id]).each(function(i,v) { if(uclass == "grouphide") $("#c"+v).removeClass("groupshow"); - if(uclass != "") - $("#c"+v).addClass(uclass); + if(uclass != "") { + var cls = $("#c"+v).attr('class'); + if( cls == undefined) + return true; + var hiding = cls.indexOf('grouphide'); + if(hiding == -1) + $("#c"+v).addClass(uclass); + } }); break; |