\OC_DB::executeAudited($sql, $params);
}
+ /**
+ * Delete synchronization data for the given user.
+ *
+ * @param SyncData $syncdata Synchronization data object
+ *
+ * @return void
+ */
+ public function deleteSyncData()
+ {
+ \OC_DB::executeAudited(
+ 'DELETE FROM `*PREFIX*grauphel_syncdata`'
+ . ' WHERE `syncdata_user` = ?',
+ array($this->username)
+ );
+ }
+
/**
* Load a note from the storage.
*
'tags' => array(),
);
}
-
+
return $this->noteFromRow($row);
}
+ /**
+ * Load a GUID of a note by the note title
+ *
+ * @param string $title Note title
+ *
+ * @return string GUID, NULL if note could not be found
+ */
+ public function loadGuidByTitle($title)
+ {
+ $row = \OC_DB::executeAudited(
+ 'SELECT note_guid FROM `*PREFIX*grauphel_notes`'
+ . ' WHERE `note_user` = ? AND `note_title` = ?',
+ array($this->username, $title)
+ )->fetchRow();
+
+ if ($row === false) {
+ return null;
+ }
+
+ return $row['note_guid'];
+ }
+
/**
* Save a note into storage.
*
);
}
+ /**
+ * Delete all notes from storage.
+ *
+ * @return void
+ */
+ public function deleteAll()
+ {
+ \OC_DB::executeAudited(
+ 'DELETE FROM `*PREFIX*grauphel_notes`'
+ . ' WHERE `note_user` = ?',
+ array($this->username)
+ );
+ }
+
/**
* Load notes for the given user in short form.
* Optionally only those changed after $since revision
return $notes;
}
+ protected function fixDate($date)
+ {
+ if (strlen($date) == 32) {
+ //Bug in grauphel 0.1.1; date fields in DB had only 32 instead of 33
+ // characters. The last digit of the time zone was missing
+ $date .= '0';
+ }
+ return $date;
+ }
+
protected function noteFromRow($row)
{
return (object) array(
'guid' => $row['note_guid'],
- 'create-date' => $row['note_create_date'],
- 'last-change-date' => $row['note_last_change_date'],
- 'last-metadata-change-date' => $row['note_last_metadata_change_date'],
+ 'create-date' => $this->fixDate($row['note_create_date']),
+ 'last-change-date' => $this->fixDate($row['note_last_change_date']),
+ 'last-metadata-change-date' => $this->fixDate($row['note_last_metadata_change_date']),
'title' => $row['note_title'],
'note-content' => $row['note_content'],
{
return array(
'note_guid' => $note->guid,
- 'note_title' => $note->title,
+ 'note_title' => (string) $note->title,
- 'note_content' => $note->{'note-content'},
- 'note_content_version' => $note->{'note-content-version'},
+ 'note_content' => (string) $note->{'note-content'},
+ 'note_content_version' => (string) $note->{'note-content-version'},
'note_create_date' => $note->{'create-date'},
'note_last_change_date' => $note->{'last-change-date'},
'note_last_metadata_change_date' => $note->{'last-metadata-change-date'},
-
- 'note_open_on_startup' => $note->{'open-on-startup'},
- 'note_pinned' => $note->pinned,
+
+ 'note_open_on_startup' => (int) $note->{'open-on-startup'},
+ 'note_pinned' => (int) $note->pinned,
'note_tags' => json_encode($note->tags),
'note_last_sync_revision' => $note->{'last-sync-revision'},