import API from "../../api.js"; import BusinessObjects from "../../lib/business_objects/business_objects.js"; import DOM from "../../dom.js"; import Events from "../../lib/events.js"; import TableBasePage from "../base_table.js"; import Utils from "../../lib/utils.js"; import Validation from "../../lib/validation.js"; import DogTableMixinPage from "../dog/mixin_table.js"; var _rowBlankDistraction; var _rowBlankAssessmentCommandModalityLink; export default class PageUserCompany extends TableBasePage { static hash = hashPageUserCompany; static attrIdRowObject = attrIdCompany; callSaveTableContent = API.saveCompanies; constructor(router) { super(router); this.dogMixin = new DogTableMixinPage(this); } initialize() { this.sharedInitialize(); } hookupFilters() { } loadRowTable(rowJson) { if (rowJson == null) return; if (_verbose) { Utils.consoleLogIfNotProductionEnvironment("applying data row: ", rowJson); } } getTableRecords(dirtyOnly = false) { dirtyOnly = true; let container = document.querySelector('.' + flagContainer + '.' + flagUser); let nameInput = document.getElementById(flagName); let websiteInput = document.getElementById(flagWebsite); let companies = []; if (!dirtyOnly || container.classList.contains(flagDirty)) companies.push({ [attrIdCompany]: container.getAttribute(attrIdCompany) , [flagName]: DOM.getElementAttributeValueCurrent(nameInput) , [flagWebsite]: DOM.getElementAttributeValueCurrent(websiteInput) , [flagActive]: true }); return companies; } initialiseRowNew(tbody, row) { } postInitialiseRowNewCallback(tbody) { } callFilterTableContent() { super.callFilterTableContent(); } hookupTableMain() { super.hookupTableMain(); this.hookupNameInput(); this.hookupWebsiteInput(); } hookupNameInput() { let selector = '#' + flagName; Events.initialiseEventHandler(selector, flagInitialised, (nameInput) => { nameInput.addEventListener("change", (event) => { nameInput = event.target; let container = document.querySelector('.' + flagContainer + '.' + flagUser); let wasDirtyContainer = container.classList.contains(flagDirty); let wasDirtyElement = nameInput.classList.contains(flagDirty); let isDirtyElement = DOM.updateAndCheckIsElementDirty(nameInput); if (isDirtyElement == wasDirtyElement) return; let isDirtyContainer = DOM.hasDirtyChildrenContainer(container); // wasDirtyContainer || isDirtyElement; if (isDirtyContainer) { container.classList.add(flagDirty); } else { container.classList.remove(flagDirty); } this.updateAndToggleShowButtonsSaveCancel(); }); }); } hookupWebsiteInput() { let selector = '#' + flagWebsite; Events.initialiseEventHandler(selector, flagInitialised, (websiteInput) => { websiteInput.addEventListener("change", (event) => { websiteInput = event.target; let container = document.querySelector('.' + flagContainer + '.' + flagUser); let wasDirtyContainer = container.classList.contains(flagDirty); let wasDirtyElement = websiteInput.classList.contains(flagDirty); let isDirtyElement = DOM.updateAndCheckIsElementDirty(websiteInput); if (isDirtyElement == wasDirtyElement) return; let isDirtyContainer = DOM.hasDirtyChildrenContainer(container); // wasDirtyContainer || isDirtyElement; if (isDirtyContainer) { container.classList.add(flagDirty); } else { container.classList.remove(flagDirty); } this.updateAndToggleShowButtonsSaveCancel(); }); }); } leave() { super.leave(); } }