From db1f77e4f51b1172aabe12defdd8228e9dd3b93b Mon Sep 17 00:00:00 2001
From: Thomas Tanghus <thomas@tanghus.net>
Date: Wed, 25 Jan 2012 01:10:56 +0100
Subject: [PATCH] Some reminders in the code of what I have to change post
 OC3.0

---
 apps/contacts/ajax/addproperty.php | 8 ++++++++
 apps/contacts/lib/app.php          | 1 +
 apps/contacts/lib/vcard.php        | 2 ++
 3 files changed, 11 insertions(+)

diff --git a/apps/contacts/ajax/addproperty.php b/apps/contacts/ajax/addproperty.php
index f016820ce5..a4b5c59119 100644
--- a/apps/contacts/ajax/addproperty.php
+++ b/apps/contacts/ajax/addproperty.php
@@ -74,6 +74,14 @@ foreach ($parameters as $key=>$element) {
 }
 $checksum = md5($vcard->children[$line]->serialize());
 
+/* FIXME: OC_Contacts_App::getPropertyLineByChecksum throws an OC_JSON error when doing this check.
+   Fix for v. 3.1
+if(!is_null(OC_Contacts_App::getPropertyLineByChecksum($id, $checksum))) {
+	OC_JSON::error(array('data' => array('message' => $l->t('Trying to add duplicate property.'))));
+	OC_Log::write('contacts','ajax/addproperty.php: Trying to add duplicate property: '.$name, OC_Log::DEBUG);
+	exit();
+}
+*/
 if(!OC_Contacts_VCard::edit($id,$vcard->serialize())) {
 	OC_JSON::error(array('data' => array('message' => $l->t('Error adding contact property.'))));
 	OC_Log::write('contacts','ajax/addproperty.php: Error updating contact property: '.$name, OC_Log::ERROR);
diff --git a/apps/contacts/lib/app.php b/apps/contacts/lib/app.php
index bc1e4974b3..39df497043 100644
--- a/apps/contacts/lib/app.php
+++ b/apps/contacts/lib/app.php
@@ -85,6 +85,7 @@ class OC_Contacts_App{
 				break;
 			}
 		}
+		// FIXME: I'm not sure this should throw a JSON error as it might just be used to check for dupes. /Tanghus.
 		if(is_null($line)){
 			OC_JSON::error(array('data' => array( 'message' => self::$l10n->t('Information about vCard is incorrect. Please reload the page.'))));
 			exit();
diff --git a/apps/contacts/lib/vcard.php b/apps/contacts/lib/vcard.php
index ceac2dcfad..aefa2c7411 100644
--- a/apps/contacts/lib/vcard.php
+++ b/apps/contacts/lib/vcard.php
@@ -320,6 +320,8 @@ class OC_Contacts_VCard{
 	 * ['value'] htmlspecialchars escaped value of property
 	 * ['parameters'] associative array name=>value
 	 * ['checksum'] checksum of whole property
+	 * NOTE: $value is not escaped anymore. It shouldn't make any difference
+	 * but we should look out for any problems.
 	 */
 	public static function structureProperty($property){
 		$value = $property->value;
-- 
GitLab