| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- // @require variables:
- if ('undefined' === typeof TABLE_AJAX_NODE_ID) throw "Missing TABLE_AJAX_NODE_ID"; // $this->_htmlID,
- if ('undefined' === typeof TABLE_AJAX_LABEL) throw "Missing TABLE_AJAX_LABEL"; // this->getLabelHtml()
- if ('undefined' === typeof NAMESPACE) throw "Missing NAMESPACE";
- if ('undefined' === typeof FIRCE_FILER_INIT) throw "Missing FIRCE_FILER_INIT";
- if ('undefined' === typeof FUNCTION_CREATE_ROUTE) throw "Missing FUNCTION_CREATE_ROUTE";
- if ('undefined' === typeof URL_CREATE_FORM_AJAX) throw "Missing URL_CREATE_FORM_AJAX";
- if ('undefined' === typeof URL_CREATE_FORM_LEGACY_HTML) throw "Missing URL_CREATE_FORM_LEGACY_HTML";
- function TableAjax__CREATE_Route() {
- var cont = jQuery('#' + TABLE_AJAX_NODE_ID).parent();
- cont.hide();
- // remove previous task content
- var taskCnt = jQuery('#' + TABLE_AJAX_NODE_ID + '_task');
- taskCnt.parent().remove();
- taskCnt.remove();
- var taskCont = jQuery('<div class="AjaxTableCont"></div>').insertBefore(cont);
- jQuery('<ul class="breadcrumb">' +
- '<li><a href="#" onclick="return tableAjaxBackToTable();">'+TABLE_AJAX_LABEL+'</a></li>' +
- '<li class="active">Dodaj nowy rekord</li>' +
- '</ul>').appendTo(taskCont);
- taskCnt = jQuery('<div id="' + TABLE_AJAX_NODE_ID + '_task" class="AjaxTableTaskCnt AjaxTable-loading"></div>').appendTo(taskCont);
- jQuery('<span class="loading-info"> loading ...</span>').appendTo(taskCnt);
- var reqData = {};
- var forceFilterInit = FIRCE_FILER_INIT; // TODO: read from TableAjax
- if (forceFilterInit) {
- $.map(forceFilterInit, function(fltrProps, fltr) {
- reqData['ff_' + fltr] = fltrProps;
- });
- }
- // TODO: replace jQuery.ajax
- // window.fetch(URL_CREATE_FORM_AJAX, {
- // method: 'GET',
- // credentials: 'same-origin',
- // }).then(function(response) {
- // return response.json()
- // }).then(function __route_edit_payload(payload) {
- // taskCnt.removeClass('AjaxTable-loading');
- // // console.log('editFormJson :: payload', payload)
- // if ('success' == payload.type) {
- // var node = document.createElement('div')
- // taskCnt.get(0).appendChild(node)
- // p5UI__buildDom(payload.body.reactNode, node)
- // initDateTimePicker(jQuery(node));
- // // console.log('editFormJson :: dom loaded - TODO: add action on save - P5UI__FeatureEditForm')
- // } else {
- // console.log('editFormJson :: ERROR payload', payload)
- // }
- // }).catch(function __route_edit_catch(e) {
- // taskCnt.removeClass('AjaxTable-loading');
- // console.log('editFormJson :: ERROR', e)
- // p5UI__notifyAjaxCallback({
- // type: 'error',
- // msg: 'Request error ' + e
- // });
- // });
- jQuery.ajax({
- url: URL_CREATE_FORM_LEGACY_HTML,
- type: 'GET',
- dataType: 'text',
- data: reqData,
- async: true,
- success: function(data) {
- taskCnt.removeClass('AjaxTable-loading');
- jQuery(data).appendTo(taskCnt);
- initDateTimePicker(taskCnt);
- },
- error: function(err) {
- taskCnt.removeClass('AjaxTable-loading');
- }
- });
- }
- global[FUNCTION_CREATE_ROUTE] = TableAjax__CREATE_Route
|