. * */ // Check if we are a user OCP\JSON::checkLoggedIn(); OCP\JSON::checkAppEnabled('contacts'); OCP\JSON::callCheck(); require_once __DIR__.'/../loghandler.php'; $id = isset($_POST['id']) ? $_POST['id'] : null; $name = isset($_POST['name']) ? $_POST['name'] : null; $checksum = isset($_POST['checksum']) ? $_POST['checksum'] : null; $l10n = OCA\Contacts\App::$l10n; $multi_properties = array('EMAIL', 'TEL', 'IMPP', 'ADR', 'URL'); if(!$id) { bailOut(OCA\Contacts\App::$l10n->t('id is not set.')); } if(!$name) { bailOut(OCA\Contacts\App::$l10n->t('element name is not set.')); } if(!$checksum && in_array($name, $multi_properties)) { bailOut(OCA\Contacts\App::$l10n->t('checksum is not set.')); } $vcard = OCA\Contacts\App::getContactVCard( $id ); if(!is_null($checksum)) { $line = OCA\Contacts\App::getPropertyLineByChecksum($vcard, $checksum); if(is_null($line)) { bailOut($l10n->t('Information about vCard is incorrect. Please reload the page.')); exit(); } unset($vcard->children[$line]); } else { unset($vcard->{$name}); } try { OCA\Contacts\VCard::edit($id, $vcard); } catch(Exception $e) { bailOut($e->getMessage()); } OCP\JSON::success(array( 'data' => array( 'id' => $id, 'lastmodified' => OCA\Contacts\App::lastModified($vcard)->format('U'), ) ));