2019-11-24 01:09:37 +01:00
|
|
|
import DataUtils from './utils/DataUtils';
|
|
|
|
import Manager from './controllers/DashManager';
|
|
|
|
import request from 'request-promise';
|
|
|
|
import * as DataEvent from '../com/events/DataEvent';
|
2019-11-22 07:36:18 +01:00
|
|
|
//import DBUtils from '../../../../../brain/utils/tools/DBUtils';
|
2019-11-24 01:09:37 +01:00
|
|
|
const utils = new DataUtils();
|
|
|
|
const settings = require('../../site/settings.json');
|
2019-11-22 07:36:18 +01:00
|
|
|
|
|
|
|
export default class Base {
|
|
|
|
//--------------------------
|
|
|
|
// constructor
|
|
|
|
//--------------------------
|
|
|
|
constructor() {
|
|
|
|
this.start();
|
|
|
|
}
|
|
|
|
|
|
|
|
//--------------------------
|
|
|
|
// methods
|
|
|
|
//--------------------------
|
|
|
|
start() {
|
|
|
|
if (document.getElementById('dash-form')) {
|
|
|
|
document
|
|
|
|
.getElementById('login-btn')
|
|
|
|
.addEventListener('click', e => this.handleLogin(e));
|
|
|
|
} else {
|
2019-11-24 01:09:37 +01:00
|
|
|
let manager = new Manager();
|
2019-11-22 07:36:18 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
//--------------------------
|
|
|
|
// event handlers
|
|
|
|
//--------------------------
|
|
|
|
handleLogin(e) {
|
|
|
|
e.stopPropagation();
|
|
|
|
e.preventDefault();
|
2019-11-24 01:09:37 +01:00
|
|
|
let authForm = utils.formDataToJSON(document.getElementById('login'));
|
|
|
|
|
|
|
|
request({
|
|
|
|
method: 'POST',
|
|
|
|
uri: settings.base_url + '/api/v1/auth/login',
|
|
|
|
body: authForm,
|
|
|
|
json: true
|
|
|
|
})
|
|
|
|
.then(res => {
|
|
|
|
if (res.type === DataEvent.REQUEST_LAME) {
|
|
|
|
e.target.innerHTML = res.message;
|
2019-11-22 07:36:18 +01:00
|
|
|
} else {
|
2019-11-24 01:09:37 +01:00
|
|
|
window.location = '/@/dashboard';
|
2019-11-22 07:36:18 +01:00
|
|
|
}
|
|
|
|
})
|
|
|
|
.catch(err => {
|
2019-11-24 01:09:37 +01:00
|
|
|
//console.log('ERROR', err);
|
2019-11-22 07:36:18 +01:00
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|