Notes/src/routes/index.js

42 lines
1.4 KiB
JavaScript
Raw Normal View History

2017-10-21 21:10:33 -04:00
"use strict";
const sourceIdService = require('../services/source_id');
const sql = require('../services/sql');
const attributeService = require('../services/attributes');
2018-04-02 21:34:28 -04:00
const config = require('../services/config');
const optionService = require('../services/options');
const log = require('../services/log');
const env = require('../services/env');
2020-06-20 12:31:38 +02:00
function index(req, res) {
const options = optionService.getOptionsMap();
2018-09-06 11:54:04 +02:00
2020-04-23 23:08:15 +02:00
let view = req.cookies['trilium-device'] === 'mobile' ? 'mobile' : 'desktop';
const csrfToken = req.csrfToken();
log.info(`Generated CSRF token ${csrfToken} with secret ${res.getHeader('set-cookie')}`);
2018-12-28 23:47:06 +01:00
res.render(view, {
csrfToken: csrfToken,
2018-09-06 11:54:04 +02:00
theme: options.theme,
2019-01-13 21:27:32 +01:00
mainFontSize: parseInt(options.mainFontSize),
treeFontSize: parseInt(options.treeFontSize),
detailFontSize: parseInt(options.detailFontSize),
2020-06-20 12:31:38 +02:00
sourceId: sourceIdService.generateSourceId(),
maxEntityChangeIdAtLoad: sql.getValue("SELECT COALESCE(MAX(id), 0) FROM entity_changes"),
2018-04-02 21:34:28 -04:00
instanceName: config.General ? config.General.instanceName : null,
2020-06-20 12:31:38 +02:00
appCssNoteIds: getAppCssNoteIds(),
2020-04-25 23:52:13 +02:00
isDev: env.isDev(),
isMainWindow: !req.query.extra,
extraHoistedNoteId: req.query.extraHoistedNoteId
});
}
2020-06-20 12:31:38 +02:00
function getAppCssNoteIds() {
2020-12-14 22:12:26 +01:00
return attributeService.getNoteIdsWithLabels(['appCss', 'appTheme']);
}
module.exports = {
index
};