mirror of
https://github.com/Karaka-Management/jsOMS.git
synced 2026-02-14 00:18:40 +00:00
prepare on change
This commit is contained in:
parent
88322c426a
commit
3b3c6115cd
|
|
@ -151,6 +151,11 @@ export class Form
|
||||||
self.formActions(self, event, id);
|
self.formActions(self, event, id);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// If !isOnChange(): update window state on change
|
||||||
|
// -> unhandled state changes
|
||||||
|
// -> will be handled later
|
||||||
|
// If isOnChange(): every change results in action
|
||||||
|
// -> perform action on change
|
||||||
if (!this.forms[id].isOnChange()) {
|
if (!this.forms[id].isOnChange()) {
|
||||||
toBind[i].addEventListener('change', function (evnt) {
|
toBind[i].addEventListener('change', function (evnt) {
|
||||||
if (window.omsApp.state) {
|
if (window.omsApp.state) {
|
||||||
|
|
@ -184,11 +189,12 @@ export class Form
|
||||||
|
|
||||||
if (target === 'input' || target === 'textarea') {
|
if (target === 'input' || target === 'textarea') {
|
||||||
let dataParent = null;
|
let dataParent = null;
|
||||||
|
|
||||||
if (self.forms[id].getFormElement().tagName.toLowerCase() === 'table') {
|
if (self.forms[id].getFormElement().tagName.toLowerCase() === 'table') {
|
||||||
dataParent = event.srcElement.closest(self.forms[id].getFormElement().getAttribute('data-ui-element'));
|
dataParent = event.srcElement.closest(self.forms[id].getFormElement().getAttribute('data-ui-element'));
|
||||||
}
|
}
|
||||||
|
|
||||||
self.submit(self.forms[id], null, dataParent);
|
self.submit(self.forms[id], null, dataParent, 'post');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
@ -871,6 +877,24 @@ export class Form
|
||||||
for (let i = 0; i < buttonLength; ++i) {
|
for (let i = 0; i < buttonLength; ++i) {
|
||||||
jsOMS.removeClass(cancelButtons[i], 'hidden');
|
jsOMS.removeClass(cancelButtons[i], 'hidden');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// define remote response behavior
|
||||||
|
self.forms[externalFormId].setSuccess(function (response) {
|
||||||
|
if (response.get('status') !== 'undefined'
|
||||||
|
&& response.get('status') !== NotificationLevel.HIDDEN
|
||||||
|
) {
|
||||||
|
self.app.notifyManager.send(
|
||||||
|
new NotificationMessage(response.get('status'), response.get('title'), response.get('message')), NotificationType.APP_NOTIFICATION
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
window.omsApp.logger.log(remoteUrls);
|
||||||
|
|
||||||
|
UriFactory.setQuery('$id', response.get('response').id);
|
||||||
|
|
||||||
|
// fill elements with remote data after submit (if the template expects data from a remote source)
|
||||||
|
Form.setDataFromRemoteUrls(remoteUrls);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
formActionUpdateExternal (self, event, id, elementIndex)
|
formActionUpdateExternal (self, event, id, elementIndex)
|
||||||
|
|
@ -1034,24 +1058,24 @@ export class Form
|
||||||
*
|
*
|
||||||
* @param {FormView} form Form object
|
* @param {FormView} form Form object
|
||||||
* @param {Element} button Action different from the form action (e.g. formaction=*)
|
* @param {Element} button Action different from the form action (e.g. formaction=*)
|
||||||
|
* @param {string} method Form method
|
||||||
|
* @param {string} action Form action
|
||||||
*
|
*
|
||||||
* @return {void}
|
* @return {void}
|
||||||
*
|
*
|
||||||
* @since 1.0.0
|
* @since 1.0.0
|
||||||
*/
|
*/
|
||||||
submit (form, button = null, container = null)
|
submit (form, button = null, container = null, method = null, action = null)
|
||||||
{
|
{
|
||||||
/* Handle injects */
|
/* Handle injects */
|
||||||
const self = this;
|
const self = this;
|
||||||
const injects = form.getSubmitInjects();
|
const injects = form.getSubmitInjects();
|
||||||
let counter = 0;
|
let counter = 0;
|
||||||
|
|
||||||
let action = null;
|
|
||||||
if (button !== null) {
|
if (button !== null) {
|
||||||
action = button.getAttribute('formaction');
|
action = button.getAttribute('formaction');
|
||||||
}
|
}
|
||||||
|
|
||||||
let method = null;
|
|
||||||
if (button !== null) {
|
if (button !== null) {
|
||||||
method = button.getAttribute('formmethod');
|
method = button.getAttribute('formmethod');
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user