check for existing diaspora comment before accepting, add 'Diaspora' app to item, use html_entity_decode so quotes don't get messed up
This commit is contained in:
		
					parent
					
						
							
								144f241c5d
							
						
					
				
			
			
				commit
				
					
						721db93e84
					
				
			
		
					 1 changed files with 17 additions and 3 deletions
				
			
		| 
						 | 
				
			
			@ -453,6 +453,7 @@ function diaspora_post($importer,$xml) {
 | 
			
		|||
	$datarray['author-link'] = $contact['url'];
 | 
			
		||||
	$datarray['author-avatar'] = $contact['thumb'];
 | 
			
		||||
	$datarray['body'] = $body;
 | 
			
		||||
	$datarray['app']  = 'Diaspora';
 | 
			
		||||
 | 
			
		||||
	item_store($datarray);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -483,6 +484,15 @@ function diaspora_comment($importer,$xml,$msg) {
 | 
			
		|||
		// NOTREACHED
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	$r = q("SELECT * FROM `item` WHERE `uid` = %d AND `guid` = '%s' LIMIT 1",
 | 
			
		||||
		intval($importer['uid']),
 | 
			
		||||
		dbesc($guid)
 | 
			
		||||
	);
 | 
			
		||||
	if(count($r)) {
 | 
			
		||||
		logger('daspora_comment: our comment just got relayed back to us (or there was a guid collision) : ' . $guid);
 | 
			
		||||
		return;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	$r = q("SELECT * FROM `item` WHERE `uid` = %d AND `guid` = '%s' LIMIT 1",
 | 
			
		||||
		intval($importer['uid']),
 | 
			
		||||
		dbesc($parent_guid)
 | 
			
		||||
| 
						 | 
				
			
			@ -558,6 +568,7 @@ function diaspora_comment($importer,$xml,$msg) {
 | 
			
		|||
	$datarray['author-link'] = $person['url'];
 | 
			
		||||
	$datarray['author-avatar'] = ((x($person,'thumb')) ? $person['thumb'] : $person['photo']);
 | 
			
		||||
	$datarray['body'] = $body;
 | 
			
		||||
	$datarray['app']  = 'Diaspora';
 | 
			
		||||
 | 
			
		||||
	$message_id = item_store($datarray);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -776,6 +787,8 @@ EOT;
 | 
			
		|||
	$plink = '[url=' . $a->get_baseurl() . '/display/' . $importer['nickname'] . '/' . $parent_item['id'] . ']' . $post_type . '[/url]';
 | 
			
		||||
	$arr['body'] =  sprintf( $bodyverb, $ulink, $alink, $plink );
 | 
			
		||||
 | 
			
		||||
	$arr['app']  = 'Diaspora';
 | 
			
		||||
 | 
			
		||||
	$arr['private'] = $parent_item['private'];
 | 
			
		||||
	$arr['verb'] = $activity;
 | 
			
		||||
	$arr['object-type'] = $objtype;
 | 
			
		||||
| 
						 | 
				
			
			@ -897,7 +910,8 @@ function diaspora_send_status($item,$owner,$contact) {
 | 
			
		|||
		}
 | 
			
		||||
	}	
 | 
			
		||||
 | 
			
		||||
	$body = xmlify(bb2diaspora($body));
 | 
			
		||||
	$body = xmlify(html_entity_decode(bb2diaspora($body)));
 | 
			
		||||
 | 
			
		||||
	$public = (($item['private']) ? 'false' : 'true');
 | 
			
		||||
 | 
			
		||||
	require_once('include/datetime.php');
 | 
			
		||||
| 
						 | 
				
			
			@ -990,7 +1004,7 @@ function diaspora_send_followup($item,$owner,$contact) {
 | 
			
		|||
		$like = false;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	$text = bb2diaspora($item['body']);
 | 
			
		||||
	$text = html_entity_decode(bb2diaspora($item['body']));
 | 
			
		||||
 | 
			
		||||
	// sign it
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -1046,7 +1060,7 @@ function diaspora_send_relay($item,$owner,$contact) {
 | 
			
		|||
		$like = false;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	$text = bb2diaspora($item['body']);
 | 
			
		||||
	$text = html_entity_decode(bb2diaspora($item['body']));
 | 
			
		||||
 | 
			
		||||
	// fetch the original signature	if somebody sent the post to us to relay
 | 
			
		||||
	// if we are relaying for a reply originating here, there wasn't a 'send to relay'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue