Notes/docs/backend_api/becca_entities_boption.js.html

99 lines
2.8 KiB
HTML
Raw Normal View History

2021-09-30 12:26:13 +02:00
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
2023-01-03 13:54:27 +01:00
<title>JSDoc: Source: becca/entities/boption.js</title>
2021-09-30 12:26:13 +02:00
<script src="scripts/prettify/prettify.js"> </script>
<script src="scripts/prettify/lang-css.js"> </script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>
<body>
<div id="main">
2023-01-03 13:54:27 +01:00
<h1 class="page-title">Source: becca/entities/boption.js</h1>
2021-09-30 12:26:13 +02:00
<section>
<article>
<pre class="prettyprint source linenums"><code>"use strict";
2022-01-10 19:54:38 +01:00
const dateUtils = require('../../services/date_utils');
2023-01-03 13:54:27 +01:00
const AbstractBeccaEntity = require("./abstract_becca_entity");
2021-09-30 12:26:13 +02:00
/**
* Option represents name-value pair, either directly configurable by the user or some system property.
2022-04-16 00:17:32 +02:00
*
2023-01-03 13:54:27 +01:00
* @extends AbstractBeccaEntity
2021-09-30 12:26:13 +02:00
*/
2023-01-03 13:54:27 +01:00
class BOption extends AbstractBeccaEntity {
2021-09-30 12:26:13 +02:00
static get entityName() { return "options"; }
static get primaryKeyName() { return "name"; }
static get hashedProperties() { return ["name", "value"]; }
constructor(row) {
super();
/** @type {string} */
2021-09-30 12:26:13 +02:00
this.name = row.name;
/** @type {string} */
2021-09-30 12:26:13 +02:00
this.value = row.value;
/** @type {boolean} */
2021-09-30 12:26:13 +02:00
this.isSynced = !!row.isSynced;
/** @type {string} */
2021-09-30 12:26:13 +02:00
this.utcDateModified = row.utcDateModified;
this.becca.options[this.name] = this;
}
beforeSaving() {
super.beforeSaving();
this.utcDateModified = dateUtils.utcNowDateTime();
}
getPojo() {
return {
name: this.name,
value: this.value,
isSynced: this.isSynced,
2022-01-05 20:31:21 +01:00
utcDateModified: this.utcDateModified
2021-09-30 12:26:13 +02:00
}
}
}
2023-01-03 13:54:27 +01:00
module.exports = BOption;
2021-09-30 12:26:13 +02:00
</code></pre>
</article>
</section>
</div>
<nav>
2023-01-03 13:54:27 +01:00
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-sql.html">sql</a></li></ul><h3>Classes</h3><ul><li><a href="AbstractBeccaEntity.html">AbstractBeccaEntity</a></li><li><a href="BAttribute.html">BAttribute</a></li><li><a href="BBranch.html">BBranch</a></li><li><a href="BEtapiToken.html">BEtapiToken</a></li><li><a href="BNote.html">BNote</a></li><li><a href="BNoteRevision.html">BNoteRevision</a></li><li><a href="BOption.html">BOption</a></li><li><a href="BRecentNote.html">BRecentNote</a></li><li><a href="BackendScriptApi.html">BackendScriptApi</a></li></ul><h3><a href="global.html">Global</a></h3>
2021-09-30 12:26:13 +02:00
</nav>
<br class="clear">
<footer>
2022-11-07 21:26:13 +01:00
Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 4.0.0</a>
2021-09-30 12:26:13 +02:00
</footer>
<script> prettyPrint(); </script>
<script src="scripts/linenumber.js"> </script>
</body>
</html>