1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 | var
|
13 | router = require('./index'),
|
14 |
|
15 | auth = require('../lib/auth/validate'),
|
16 | cache = require('../lib/caching/manager'),
|
17 | _datasources = require('../lib/objects/datasources'),
|
18 | _datatables = require('../lib/objects/datatables');
|
19 |
|
20 | var commonInputs = {
|
21 | required: [],
|
22 | optional: []
|
23 | };
|
24 |
|
25 |
|
26 |
|
27 |
|
28 |
|
29 |
|
30 |
|
31 | exports.index = exports.current = {
|
32 | name: 'status/current',
|
33 | description: 'i list the current status of the system',
|
34 | inputs: commonInputs,
|
35 | outputExample: {},
|
36 | permission: 'access_system',
|
37 | run: function (req, res) {
|
38 | var status = joola.state;
|
39 | router.responseSuccess(status, req, res);
|
40 | }
|
41 | };
|
42 |
|
43 | exports.systemStartDate = {
|
44 | name: 'status/systemStartDate',
|
45 | description: 'i return the system start date',
|
46 | inputs: commonInputs,
|
47 | outputExample: {},
|
48 | permission: ['access_system'],
|
49 | run: function (req, res) {
|
50 | var response = {};
|
51 | try {
|
52 | if (typeof(joola.config.content.system.startdate) == 'object') {
|
53 | response.startDate = joola.config.content.system.startdate;
|
54 | return router.responseSuccess(response, req, res);
|
55 | }
|
56 | else {
|
57 | var datasource = _datasources.get(joola.config.content.system.datasource);
|
58 | var datatable = _datatables.get(joola.config.content.system.startdate);
|
59 | datatable.datasourceid = datasource.id;
|
60 | datatable.datasource = datasource;
|
61 | cache.minCacheDate(datatable, function (date) {
|
62 | response.startDate = date;
|
63 | return router.responseSuccess(response, req, res);
|
64 | });
|
65 | }
|
66 | }
|
67 | catch (ex) {
|
68 | joola.logger.error('Exception status.systemStartDate: ' + ex.message);
|
69 | return router.responseError(ex, req, res);
|
70 | }
|
71 | }
|
72 | };
|
73 |
|
74 | exports.systemEndDate = {
|
75 | name: 'status/systemEndDate',
|
76 | description: 'i return the system end date',
|
77 | inputs: commonInputs,
|
78 | outputExample: {},
|
79 | permission: ['access_system'],
|
80 | run: function (req, res) {
|
81 | var response = {};
|
82 | try {
|
83 | if (typeof(joola.config.content.system.enddate ) == 'object') {
|
84 | response.endDate = joola.config.content.system.enddate;
|
85 | return router.responseSuccess(response, req, res);
|
86 | }
|
87 | else {
|
88 | var datasource = _datasources.get(joola.config.content.system.datasource);
|
89 | var datatable = _datatables.get(joola.config.content.system.enddate);
|
90 | datatable.datasourceid = datasource.id;
|
91 | datatable.datasource = datasource;
|
92 |
|
93 | cache.maxCacheDate(datatable, function (date) {
|
94 |
|
95 | response.endDate = date;
|
96 | return router.responseSuccess(response, req, res);
|
97 | });
|
98 | }
|
99 | }
|
100 | catch (ex) {
|
101 | joola.logger.error('Exception status.systemEndDate: ' + ex.message);
|
102 | return router.responseError(ex, req, res);
|
103 | }
|
104 | }
|
105 | }; |
\ | No newline at end of file |