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" => [
|
"vars" => [
|
||||||
"id" => "numeric"
|
"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 (HTML)": "Download (HTML)",
|
||||||
"Download (Office)": "Download (Office)",
|
"Download (Office)": "Download (Office)",
|
||||||
"Note Reminder": "Note Reminder",
|
"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