122 lines
2.9 KiB
JavaScript
122 lines
2.9 KiB
JavaScript
/*
|
|
r = (c,x)->
|
|
for i in ($html[0]).querySelectorAll(c)
|
|
ReactDOM.render(x,i)
|
|
r('#modals', <Modals ref={(i)=>A.W.modals = i}/>)
|
|
*/
|
|
var auth;
|
|
import './form/class/form.js';
|
|
import './form/class/input.js';
|
|
import './canban/canban.js';
|
|
import './ui/notify.js';
|
|
|
|
window.initReact = function ($html, data = {}) {
|
|
var a, getData, i, j, k, l, len, len1, len2, len3, m, n, p, r, s, time;
|
|
time = new Date().getTime();
|
|
|
|
getData = function (i, attr = 'data') {
|
|
var e;
|
|
data = i.getAttribute('data-' + attr);
|
|
|
|
try {
|
|
data = JSON.parse(data);
|
|
} catch (error) {
|
|
e = error;
|
|
data = {};
|
|
}
|
|
|
|
i.removeAttribute('data-' + attr);
|
|
return data;
|
|
};
|
|
|
|
r = function (c, x) {
|
|
var i, j, len, ref, results;
|
|
ref = $html[0].querySelectorAll(c);
|
|
results = [];
|
|
|
|
for (j = 0, len = ref.length; j < len; j++) {
|
|
i = ref[j];
|
|
results.push(ReactDOM.render(x, i));
|
|
}
|
|
|
|
return results;
|
|
}; // Рендер таблиц
|
|
|
|
|
|
a = $html[0].querySelectorAll('.r_table');
|
|
|
|
for (j = 0, len = a.length; j < len; j++) {
|
|
i = a[j];
|
|
ReactDOM.render( /*#__PURE__*/React.createElement(Table, {
|
|
data: getData(i)
|
|
}), i);
|
|
} // Рендер канбанов
|
|
|
|
|
|
a = $html[0].querySelectorAll('.r_canban');
|
|
|
|
for (k = 0, len1 = a.length; k < len1; k++) {
|
|
i = a[k];
|
|
ReactDOM.render( /*#__PURE__*/React.createElement(Canban, {
|
|
data: getData(i),
|
|
columns: getData(i, 'columns'),
|
|
callback: i.getAttribute('data-callback'),
|
|
onCellClick: i.getAttribute('data-cell-click')
|
|
}), i);
|
|
} // Карточки
|
|
|
|
|
|
a = $html[0].querySelectorAll('.r_card');
|
|
|
|
for (m = 0, len2 = a.length; m < len2; m++) {
|
|
i = a[m];
|
|
ReactDOM.render( /*#__PURE__*/React.createElement(Card, {
|
|
data: getData(i)
|
|
}), i);
|
|
} // Форма авторизации
|
|
|
|
|
|
a = $html[0].querySelectorAll('#form_auth');
|
|
|
|
for (n = 0, len3 = a.length; n < len3; n++) {
|
|
i = a[n];
|
|
l = {};
|
|
l[Input.PLACEHOLDER] = 'Логин';
|
|
l[Input.LABEL] = 'Логин';
|
|
l[Input.TYPE] = INPUT_TYPE.TEXT;
|
|
l[Form.KEY_VALUE] = 'login';
|
|
p = {};
|
|
p[Input.PLACEHOLDER] = 'Пароль';
|
|
p[Input.LABEL] = 'Пароль';
|
|
p[Input.TYPE] = INPUT_TYPE.PASSWORD;
|
|
p[Form.KEY_VALUE] = 'pass';
|
|
s = {};
|
|
s[Input.TYPE] = INPUT_TYPE.SUBMIT;
|
|
s[Input.LABEL] = 'Авторизоваться';
|
|
s[Input.CSS_CLASS] = 'blue';
|
|
ReactDOM.render( /*#__PURE__*/React.createElement(Form, {
|
|
inputs: [l, p, s],
|
|
onSubmit: auth
|
|
}), i);
|
|
}
|
|
|
|
return console.log('React Render', new Date().getTime() - time);
|
|
};
|
|
|
|
window.firstInitReact = function ($html, data = {}) {};
|
|
|
|
auth = function (x) {
|
|
var s;
|
|
s = x.values;
|
|
s.dataType = 'JSON';
|
|
return API('core.user.profile/login', s, function (data) {
|
|
if (data.e === 1) {
|
|
return console.log(data);
|
|
} else {
|
|
// $res.html(data.m).show(300)
|
|
return window.location.reload();
|
|
}
|
|
});
|
|
};
|
|
//# sourceMappingURL=crm_init.js.map
|