smaller refactorings continued

This commit is contained in:
azivner
2018-04-01 12:45:35 -04:00
parent 8ba830c04b
commit 15d951b04e
6 changed files with 43 additions and 35 deletions

View File

@@ -3,6 +3,7 @@
const Entity = require('./entity');
const repository = require('../services/repository');
const utils = require('../services/utils');
const sql = require('../services/sql');
class Label extends Entity {
static get tableName() { return "labels"; }
@@ -12,7 +13,24 @@ class Label extends Entity {
return await repository.getEntity("SELECT * FROM notes WHERE noteId = ?", [this.noteId]);
}
beforeSaving() {
async beforeSaving() {
if (!this.labelId) {
this.labelId = utils.newLabelId();
}
if (this.value) {
// null value isn't allowed
this.value = "";
}
if (this.position === undefined) {
this.position = 1 + await sql.getValue(`SELECT COALESCE(MAX(position), 0) FROM labels WHERE noteId = ?`, [noteId]);
}
if (!this.isDeleted) {
this.isDeleted = false;
}
if (!this.dateCreated) {
this.dateCreated = utils.nowDate();
}