Add savenote API for creating and updating notes (#9)
This commit is contained in:
parent
d031454b95
commit
3e04746f57
46
api/actions/savenote.php
Normal file
46
api/actions/savenote.php
Normal file
@ -0,0 +1,46 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Update a note. If the note doesn't exist, creates a new one and saves it.
|
||||
*/
|
||||
|
||||
$note = new Note("", "", getRequestUser()->getUID(), null);
|
||||
|
||||
if (!empty($VARS['id'])) {
|
||||
try {
|
||||
$note = Note::loadNote($VARS['id']);
|
||||
} catch (Exception $ex) {
|
||||
// It's a new note I guess
|
||||
}
|
||||
}
|
||||
|
||||
if (!$note->hasWriteAccess(getRequestUser())) {
|
||||
sendJsonResp($Strings->get("You don't have permission to edit this note.", false), "ERROR");
|
||||
}
|
||||
|
||||
|
||||
$note->setText($VARS['text']);
|
||||
|
||||
if (!empty($VARS['color'])) {
|
||||
$note->setColor($VARS['color']);
|
||||
}
|
||||
|
||||
if (empty($VARS['modified'])) {
|
||||
$note->setModified(date("Y-m-d H:i:s"));
|
||||
} else {
|
||||
$note->setModified($requestdata['modified']);
|
||||
}
|
||||
|
||||
if (!empty($VARS['favorite'])) {
|
||||
$note->setFavorite($VARS['favorite'] == true);
|
||||
}
|
||||
|
||||
$note->saveNote();
|
||||
|
||||
sendJsonResp($Strings->get("Note saved", false), "OK", ["note" => $note->toArray()]);
|
@ -22,5 +22,16 @@ $APIS = [
|
||||
"vars" => [
|
||||
"id" => "numeric"
|
||||
]
|
||||
],
|
||||
"savenote" => [
|
||||
"load" => "savenote.php",
|
||||
"vars" => [
|
||||
"id (optional)" => "/^[0-9]+$/",
|
||||
"text" => "string",
|
||||
"color (optional)" => "/^[a-fA-F0-9]{6}$/",
|
||||
"modified (optional)" => "string",
|
||||
"favorite (optional)" => "/^[0-1]+$/",
|
||||
"archived (optional)" => "/^[0-1]+$/"
|
||||
]
|
||||
]
|
||||
];
|
||||
|
@ -25,5 +25,7 @@
|
||||
"Download (HTML)": "Download (HTML)",
|
||||
"Download (Office)": "Download (Office)",
|
||||
"Note Reminder": "Note Reminder",
|
||||
"Open {app} to read more": "Open {app} to read more"
|
||||
"Open {app} to read more": "Open {app} to read more",
|
||||
"You don't have permission to edit this note.": "You don't have permission to edit this note.",
|
||||
"Note saved": "Note saved"
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user