VaKeR CYBER ARMY
Logo of a company Server : Apache/2.4.41 (Ubuntu)
System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /var/www/html/tech_preview/hr/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //var/www/html/tech_preview/hr/document_manager_view.js
"use strict";

theme.formDocument_managerEditProperties = function(params){
    var commands = [];
    commands.push({
        icon:  DOMElement.i({
            attrs: {
                className: "material-icons"
            },
            text: "save"
        }),
        cmd: function(){
            params.func.save().then(function(){
                params.frameList.removeLast();
            });
        }
    });
    var header = absol.buildDom({
        tag: 'mheaderbar',
        props: {
            actionIcon: DOMElement.i({
                attrs: {
                    className: "material-icons"
                },
                text: "arrow_back_ios"
            }),
            title: params.title,
            commands: commands
        },
        on: {
            action: function(){
                params.frameList.removeLast();
            },
            command: function(event){
                event.commandItem.cmd();
            }
        }
    });
    var singlePage = absol.buildDom({
        tag: 'tabframe',
        child:[
            header,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-content"
                },
                children: [params.elt]
            })
        ]
    });
    params.frameList.addChild(singlePage);
    singlePage.requestActive();
};

theme.formDocument_managerSaveAsTemplate = function(params){
    var name_input = theme.input({
        style: {
            width: "100%"
        },
        value: params.name
    });
    var commands = [];
    commands.push({
        icon:  DOMElement.i({
            attrs: {
                className: "material-icons"
            },
            text: "save"
        }),
        cmd: function(){
            var name = name_input.value.trim();
            if (name == ""){
                name_input.focus();
                return;
            }
            params.func.save(name).then(function(){
                params.frameList.removeLast();
            });
        }
    });
    var header = absol.buildDom({
        tag: 'mheaderbar',
        props: {
            actionIcon: DOMElement.i({
                attrs: {
                    className: "material-icons"
                },
                text: "arrow_back_ios"
            }),
            title: params.title,
            commands: commands
        },
        on: {
            action: function(){
                params.frameList.removeLast();
            },
            command: function(event){
                event.commandItem.cmd();
            }
        }
    });
    var singlePage = absol.buildDom({
        tag: 'tabframe',
        child:[
            header,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-content"
                },
                children: [
                    DOMElement.div({
                        attrs: {
                            className: "card-mobile-label-form-edit-first"
                        },
                        text: LanguageModule.text("txt_name")
                    }),
                    name_input
                ]
            })
        ]
    });
    params.frameList.addChild(singlePage);
    singlePage.requestActive();
};

theme.formDocument_managerEditApproval = function(params){
    var commands = [];
    commands.push({
        icon:  DOMElement.i({
            attrs: {
                className: "material-icons"
            },
            text: "save"
        }),
        cmd: function(){
            params.func.save().then(function(){
                params.frameList.removeLast();
            });
        }
    });
    var header = absol.buildDom({
        tag: 'mheaderbar',
        props: {
            actionIcon: DOMElement.i({
                attrs: {
                    className: "material-icons"
                },
                text: "arrow_back_ios"
            }),
            title: params.title,
            commands: commands
        },
        on: {
            action: function(){
                params.frameList.removeLast();
            },
            command: function(event){
                event.commandItem.cmd();
            }
        }
    });
    var singlePage = absol.buildDom({
        tag: 'tabframe',
        child:[
            header,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-content"
                },
                children: [params.elt]
            })
        ]
    });
    params.frameList.addChild(singlePage);
    singlePage.requestActive();
};

theme.formDocument_managerEditDocument = function(params){
    var commands = [];
    commands.push({
        icon:  DOMElement.i({
            attrs: {
                className: "material-icons"
            },
            text: "save"
        }),
        cmd: function(){
            params.func.save().then(function(){
                params.frameList.removeLast();
            });
        }
    });
    var header = absol.buildDom({
        tag: 'mheaderbar',
        props: {
            actionIcon: DOMElement.i({
                attrs: {
                    className: "material-icons"
                },
                text: "arrow_back_ios"
            }),
            title: params.title,
            commands: commands
        },
        on: {
            action: function(){
                params.func.cancel().then(function(){
                    params.frameList.removeLast();
                });
            },
            command: function(event){
                event.commandItem.cmd();
            }
        }
    });
    var singlePage = absol.buildDom({
        tag: 'tabframe',
        child:[
            header,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-content"
                },
                children: [params.formContainer]
            })
        ]
    });
    params.frameList.addChild(singlePage);
    singlePage.requestActive();
};

theme.formDocument_managerMoveFoler = function(params){
    var folder_select = absol.buildDom({
        tag: "mselecttreemenu",
        style: {
            width: "100%",
            display: "block"
        },
        props: {
            items: params.itemsList,
            value: params.parentid,
            enableSearch: true
        }
    });
    ModalElement.showWindow({
        index: 1,
        title: LanguageModule.text("txt_move_folder_to"),
        bodycontent: DOMElement.div({
            children: [
                folder_select
            ]
        }),
        buttonlist: [
            {
                text: LanguageModule.text("txt_ok"),
                typeColor: "light",
                onclick: function (event, me){
                    params.func.save(folder_select.value).then(function(){
                        ModalElement.close();
                    })
                }
            },
            {
                text: LanguageModule.text("txt_cancel"),
                onclick: function (event, me) {
                    ModalElement.close();
                }
            }
        ]
    });
};

theme.formDocument_managerDrawApproveView = function(params){
    var data = [];
    for (var i = 0; i < params.approvers.length; i++){
        data.push([
            {text: params.approvers[i].fullname},
            params.approvers[i].status,
            params.approvers[i].time,
            params.approvers[i].note
        ]);
    }

    var approvalElt = DOMElement.div({
        children: [
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit-first"
                },
                text: LanguageModule.text("txt_time_hours_needed_for_approval")
            }),
            theme.input({
                style: {
                    width: "100%"
                },
                disabled: true,
                value: params.time_hours_needed_for_approval
            }),
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit"
                },
                text: LanguageModule.text("txt_time_hours_needed_for_approval")
            }),
            theme.input({
                style: {
                    width: "100%"
                },
                disabled: true,
                value: params.approval_method
            }),
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit"
                },
                text: LanguageModule.text("txt_approvers")
            }),
            DOMElement.div({
                attrs: {className: "cardsimpletableclass"},
                children: [DOMElement.table({
                    data: data
                })]
            })
        ]
    });
    return approvalElt;
};

theme.formDocument_managerDrawPropertiesView = function(params){
    var data = [];
    data.push(
        DOMElement.div({
            attrs: {
                className: "card-mobile-label-form-edit"
            },
            text: LanguageModule.text("txt_folder")
        }),
        theme.input({
            style: {
                width: "100%"
            },
            disabled: true,
            value: params.folderName
        })
    );
    for (var i = 0; i < params.propertiesList.length; i++){
        data.push(
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit",
                    style: {
                        fontWeight: "bold"
                    }
                },
                text: params.propertiesList[i].name
            }),
            theme.input({
                style: {
                    width: "100%"
                },
                disabled: true,
                value: params.propertiesList[i].value
            })
        )
    }
    return DOMElement.div({
        children: data
    });
};

theme.formDocument_managerShowDocument = function(params){
    var scrollInto = function(value){
        if (sectionList[value]) sectionList[value].scrollIntoView();
    };
    var drawIntro = function(){
        var res = DOMElement.div({});
        params.drawIntroFunc = function(){
            var processlbar = absol.buildDom({
               tag: 'processlbar',
               style: {
                   verticalAlign: "middle"
               },
               props: {
                   items: [
                       {value: 0, name: LanguageModule.text("txt_pending_approval"), color: "#ed7d31"},
                       {value: 1, name: LanguageModule.text("txt_published"), color: "#72bb53"},
                       {value: 2, name: LanguageModule.text("txt_rejected"), color: "#d30903"}
                   ],
                   value: params.dataDocumentEdit.status,
                   disabled: true,
                   lHeight: 1
               }
            });
            if (params.dataDocumentEdit.status == 0){
                var expire_time = params.dataDocumentEdit.issued_date.getTime() - params.dataDocumentEdit.time_hours_needed_for_approval*60*60*1000;
                if (new Date().getTime() < expire_time){
                    var remainTime = expire_time - new Date().getTime();
                    if (remainTime < 24*60*60*1000){
                        var countdownText = absol.buildDom({
                            tag: 'countdowntext',
                            style: {
                                marginLeft: "20px"
                            },
                            props: {
                                finishTime: new Date(expire_time),
                                format: "HH:mm:ss"
                            },
                            on: {
                                finish: function(){
                                    params.frameList.removeLast();
                                    hr.document_manager.showDocumentPre(params, params.id);
                                }
                            }
                        });
                        processlbar.$stepName.addChild(countdownText);
                    }
                }
            }
            var lock_ctn;
            if (params.dataDocumentEdit.unused){
                lock_ctn = DOMElement.div({
                    attrs: {
                        className: "card-icon-cover-disabled",
                        style: {
                            marginLeft: "20px"
                        }
                    },
                    children: [DOMElement.i({
                        attrs: {
                            className: "mdi mdi-lock",
                            style: {
                                color: "red",
                                fontSize: "var(--icon-fontsize)"
                            }
                        }
                    })]
                });
            }
            else {
                lock_ctn = DOMElement.div({
                    attrs: {
                        title: LanguageModule.text("txt_archive_document"),
                        className: "card-icon-cover",
                        style: {
                            marginLeft: "20px"
                        },
                        onclick: function(){
                            if (params.func.change_to_unused) params.func.change_to_unused();
                        }
                    },
                    children: [DOMElement.i({
                        attrs: {
                            className: "mdi mdi-archive-outline bsc-icon-hover-black"
                        }
                    })]
                });
            }
            var markedIcon = contentModule.getMarkIcon(params.dataDocumentEdit.marked, params.func.markedFunc);
            var viewInitInfor = DOMElement.div({
                attrs: {
                    className: "m-hr-intro-view-form"
                },
                children: [
                    processlbar,
                    lock_ctn,
                    DOMElement.div({
                        attrs: {
                            title: LanguageModule.text("txt_marked"),
                            style: {
                                marginLeft: "20px",
                                display: "inline-block"
                            }
                        },
                        children: [markedIcon]
                    })
                ]
            });
            if (params.dataDocumentEdit.unused){
                viewInitInfor.classList.add("disabled");
            }
            DOMElement.removeAllChildren(res);
            res.appendChild(viewInitInfor);
        };
        params.drawIntroFunc();
        return res;
    };
    params.viewGeneralInformation.style.paddingTop = "var(--control-verticle-distance-2)";
    var drawGeneralInformation = function(){
        var childs = [
            {
                class: 'm-mk-section-header-name',
                child: { text: LanguageModule.text("txt_general_information") },
            }
        ];
        if (params.privEdit){
            childs.push({
                class: 'm-mk-section-header-right',
                child: [
                    DOMElement.a({
                        attrs: {
                            onclick: function(){
                                params.func.edit_document();
                            }
                        },
                        text: LanguageModule.text("txt_edit")
                    })
                ]
            });
        }
        var res = absol.buildDom({
            attr: {
                "data-sectionid": "general_information"
            },
            child: [
                absol.buildDom({
                    class: 'm-mk-section-header',
                    child: childs
                }),
                params.viewGeneralInformation
            ]
        });
        params.drawGeneralInforFunc();
        return res;
    }
    params.viewProperties.style.paddingTop = "var(--control-verticle-distance-2)";
    var drawProperties = function(){
        var childs = [
            {
                class: 'm-mk-section-header-name',
                child: { text: LanguageModule.text("txt_folder_and_properties") },
            }
        ];
        if (params.privEdit){
            childs.push({
                class: 'm-mk-section-header-right',
                child: [
                    DOMElement.a({
                        attrs: {
                            onclick: function(){
                                params.func.edit_properties();
                            }
                        },
                        text: LanguageModule.text("txt_edit")
                    })
                ]
            });
        }
        var res = absol.buildDom({
            attr: {
                "data-sectionid": "properties"
            },
            child: [
                absol.buildDom({
                    class: 'm-mk-section-header',
                    child: childs
                }),
                params.viewProperties
            ]
        });
        params.drawPropertiesFunc();
        return res;
    }
    params.viewApproval.style.paddingTop = "var(--control-verticle-distance-2)";
    var drawApproval = function(){
        params.drawApprovalFunc();
        var childs = [
            {
                class: 'm-mk-section-header-name',
                child: { text: LanguageModule.text("txt_approve") }
            }
        ];
        if (params.privEdit){
            childs.push(absol.buildDom({
                class: 'm-mk-section-header-right',
                child: [
                    DOMElement.a({
                        attrs: {
                            onclick: function(){
                                params.func.edit_approve();
                            }
                        },
                        text: LanguageModule.text("txt_edit")
                    })
                ]
            }));
        }
        var res = absol.buildDom({
            attr: {
                "data-sectionid": "approve"
            },
            child: [
                absol.buildDom({
                    class: 'm-mk-section-header',
                    child: childs
                }),
                params.viewApproval
            ]
        });
        return res;
    };
    var commands = [];
    var quickmenuItems = [];
    if (params.privApproval){
        quickmenuItems.push({
            text: LanguageModule.text("txt_approved"),
            icon: DOMElement.i({
                attrs: {
                    className: "mdi mdi-checkbox-marked-circle",
                    style: {
                        color: "#489b0f"
                    }
                }
            }),
            extendClasses: "bsc-quickmenu",
            cmd: function(){
                params.func.approval();
            }
        });
        quickmenuItems.push({
            text: LanguageModule.text("txt_deny"),
            icon: DOMElement.i({
                attrs: {
                    className: "mdi mdi-close-circle",
                    style: {
                        color: "#f23c36"
                    }
                }
            }),
            extendClasses: "bsc-quickmenu",
            cmd: function(){
                params.func.deny();
            }
        });
    }
    if (params.func.change_to_unused){
        quickmenuItems.push({
            text: LanguageModule.text("txt_archive_document"),
            icon: DOMElement.i({
                attrs: {
                    className: "mdi mdi-archive-lock",
                    style: {
                        color: "red"
                    }
                }
            }),
            extendClasses: "bsc-quickmenu",
            cmd: function(){
                params.func.change_to_unused();
            }
        });
    }
    if (params.func.save_as_template){
        quickmenuItems.push({
            text: LanguageModule.text("txt_save_as_template"),
            icon: DOMElement.i({
                attrs: {
                    className: "material-icons"
                },
                text: "save"
            }),
            extendClasses: "bsc-quickmenu",
            cmd: function(){
                params.func.save_as_template();
            }
        });
    }
    quickmenuItems.push({
        text: LanguageModule.text("txt_general_information"),
        icon: DOMElement.i({
            attrs: {
                className: "mdi mdi-information-outline"
            }
        }),
        extendClasses: "bsc-quickmenu",
        cmd: function(){
            scrollInto("general_information");
        }
    },
    {
        text: LanguageModule.text("txt_folder_and_properties"),
        icon: DOMElement.i({
            attrs: {
                className: "mdi mdi-information-outline"
            }
        }),
        extendClasses: "bsc-quickmenu",
        cmd: function(){
            scrollInto("properties");
        }
    },
    {
        text: LanguageModule.text("txt_approve"),
        icon: DOMElement.i({
            attrs: {
                className: "mdi mdi-information-outline"
            }
        }),
        extendClasses: "bsc-quickmenu",
        cmd: function(){
            scrollInto("approve");
        }
    });
    var header = absol.buildDom({
        tag: 'mheaderbar',
        props: {
            actionIcon: DOMElement.i({
                attrs: {
                    className: "material-icons"
                },
                text: "arrow_back_ios"
            }),
            title: params.dataDocumentEdit.name,
            commands: commands,
            quickmenu: {
                props: {
                    extendClasses: 'cd-context-menu',
                    items: quickmenuItems
                },
                onSelect: function (x) {
                    x.cmd();
                }
            }
        },
        on: {
            action: function(){
                params.frameList.removeLast();
            },
            command: function(event){
                event.commandItem.cmd();
            }
        }
    });
    var data_ctn = DOMElement.div({
        attrs: {
            className: "card-mobile-content"
        },
        children: [
            drawIntro(),
            drawGeneralInformation(),
            drawProperties(),
            drawApproval()
        ]
    });
    var sectionList = {};
    absol.$("div", data_ctn, function(elt){
        var id = elt.getAttribute("data-sectionid");
        if (!id) return;
        sectionList[id] = elt;
    });
    var singlePage = absol.buildDom({
        tag: 'tabframe',
        child:[
            header,
            data_ctn
        ]
    });
    params.frameList.addChild(singlePage);
    singlePage.requestActive();
    return singlePage;
};

theme.formDocument_managerApprovalCtn = function(params){
    var getRowApprover = function(employeeid){
        var employee_select = absol.buildDom({
            tag: "selecttreeleafmenu",
            style: {
                display: "block",
                width: "100%"
            },
            props: {
                items: params.employeeViewItems,
                enableSearch: true,
                value: employeeid
            }
        });
        var cells = [
            {
                style: {
                    width: '30px',
                    textAlign: 'center',
                    fontSize: '25px'
                },
                class: 'as-drag-zone',
                child: 'span.mdi.mdi-drag'
            },
            {
                child: employee_select
            }
        ];
        var deleteIcon = DOMElement.div({
            attrs: {
                className: "card-icon-remove-cover",
                onclick: function(){
                    var x = tableView.rowOf(row)
                    x.remove();
                }
            },
            children: [DOMElement.i({
                attrs: {
                    className: "material-icons card-icon-remove"
                },
                text: "remove_circle"
            })]
        });
        cells.push({
            style: {width: "40px"},
            child: deleteIcon
        });
        var row = {cells: cells};
        row.getValue = function(){
            var x = employee_select.value;
            if (x == 0){
                ModalElement.alert({
                    message: LanguageModule.text("txt_employee_is_null")
                });
                return;
            }
            return x;
        };
        return row;
    };
    var approval_method_select = absol.buildDom({
        tag: "mselectmenu",
        style: {
            display: "block",
            width: "100%"
        },
        props: {
            items: contentModule.getListApprovalMethod()
        }
    });
    if (params.id > 0 && params.dataDocumentEdit && params.dataDocumentEdit.approval_method != "") approval_method_select.value = params.dataDocumentEdit.approval_method;
    var time_hours_needed_for_approval_input = theme.input({
        type: "number",
        min: 0,
        style: {
            textAlign: "right",
            width: "100%"
        },
        value: params.id > 0 && params.dataDocumentEdit? params.dataDocumentEdit.time_hours_needed_for_approval : 0
    });
    var data = [];
    if (params.id > 0 && params.dataDocumentEdit){
        for (var i = 0; i < params.dataDocumentEdit.approvers.length; i++){
            data.push(getRowApprover(params.dataDocumentEdit.approvers[i].employeeid));
        }
    }
    var tableView = absol.buildDom({
        tag: "dynamictable",
        props: {
            adapter: {
               rowsPerPage: Infinity,
               data: {
                   head: {
                       rows: [
                           {
                               cells: [
                                   {},
                                   {
                                       child:  absol.buildDom({text: LanguageModule.text("txt_employee")})
                                   },
                                   {}
                               ]
                           }
                       ]
                   },
                   body: {
                       rows: data
                   }
               }
           }
        }
    });
    var editApprovalForm = DOMElement.div({
        children: [
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit-first"
                },
                text: LanguageModule.text("txt_time_hours_needed_for_approval")
            }),
            time_hours_needed_for_approval_input,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit"
                },
                text: LanguageModule.text("txt_approval_method")
            }),
            approval_method_select,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit"
                },
                children: [
                    DOMElement.span({text: LanguageModule.text("txt_approvers")}),
                    DOMElement.div({
                        attrs: {
                            className: "mk-table-wrapper-header-cmd",
                            onclick: function(){
                                tableView.addRow(getRowApprover(0));
                            }
                        },
                        text: LanguageModule.text("txt_add")
                    })
                ]
            }),
            tableView
        ]
    });
    editApprovalForm.getValue = function(){
        var time_hours_needed_for_approval = parseFloat(time_hours_needed_for_approval_input.value);
        if (!time_hours_needed_for_approval){
            ModalElement.alert({
                message: LanguageModule.text("txt_time_hours_needed_for_approval_is_null"),
                func: function(){
                    time_hours_needed_for_approval_input.focus();
                }
            });
            return;
        }
        var approvers = [], value;
        var data = tableView.requireRows();
        var rowData;
        for (var i = 0; i < data.length; i++){
            rowData = data[i];
            value = rowData.data.getValue();
            if (!value) return;
            approvers.push(value);
        }
        var res = {
            time_hours_needed_for_approval: time_hours_needed_for_approval,
            approval_method: approval_method_select.value,
            approvers: approvers
        };
        return res;
    };
    return editApprovalForm;
};

theme.formDocument_managerPropertiesCtn = function(params){
    var folder_select = absol.buildDom({
        tag: "mselecttreemenu",
        style: {
            display: "block",
            width: "100%"
        },
        props: {
            items: contentModule.makeDocument_foldersSelectItems(params, params.listProps["folder"]),
            enableSearch: true,
            strictValue: true
        },
        on: {
            change: function(){
                params.change_func();
            }
        }
    });
    var data = [
        DOMElement.div({
            attrs: {
                className: "card-mobile-label-form-edit-first"
            },
            text: LanguageModule.text("txt_folder")
        }),
        folder_select
    ];
    var combobox = {};
    for (var i = 0; i < params.listPropertiesRoot.length; i++){
        combobox[params.listPropertiesRoot[i].id] = absol.buildDom({
            tag: "mselectmenu",
            style: {
                display: "block",
                width: "100%"
            },
            props: {
                items: contentModule.makeDocument_propertiesSelectItems(params, params.listPropertiesRoot[i].id, params.listProps[params.listPropertiesRoot[i].id]),
                enableSearch: true,
                strictValue: true
            },
            on: {
                change: function(){
                    params.change_func();
                }
            }
        });
        if (params.id > 0){
            if (params.dataDocumentEdit.properties[params.listPropertiesRoot[i].id] !== undefined){
                combobox[params.listPropertiesRoot[i].id].value = params.dataDocumentEdit.properties[params.listPropertiesRoot[i].id];
            }
        }
        data.push(
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit"
                },
                text: params.listPropertiesRoot[i].name
            }),
            combobox[params.listPropertiesRoot[i].id]
        );
    }
    data.push(DOMElement.div({
        attrs: {style: {textAlign: "right", height: "var(--control-height)"}},
        children: [DOMElement.span({
            attrs: {
                style: {
                    color: "var(--a-color)",
                    lineHeight: "var(--control-height)"
                },
                onclick: function(){
                   params.reset_func();
                }
            },
            text: LanguageModule.text("txt_reset")
        })]
    }));
    var res = DOMElement.div({
        children: data
    });
    res.getValue = function(){
        var values = [], value;
        var folderid = folder_select.value;
        if (folderid == 0){
            ModalElement.alert({message: LanguageModule.text("war_txt_not_folder")});
            return;
        }
        values.push({
            folderid: folderid,
            property_groupid: 'folder'
        })
        for (var i = 0; i < params.listPropertiesRoot.length; i++){
            value = combobox[params.listPropertiesRoot[i].id].value;
            if (value == 0 && params.listPropertiesRoot[i].id < 0){
                ModalElement.alert({
                    message: LanguageModule.text2("war_txt_no_select_properties", [params.listPropertiesRoot[i].name])
                });
                return;
            }
            values.push({
                propertyid: value,
                property_groupid: params.listPropertiesRoot[i].id
            });
        }
        return values;
    };
    res.folder_select = folder_select;
    res.combobox = combobox;
    return res;
};

theme.formDocument_managerAddDocument = function(params){
    var firstPageCtn = DOMElement.div({
        children: [
            DOMElement.div({
                attrs: {
                    className: 'm-kv-document-page-content'
                },
                children: [params.formContainer]
            }),
            absol.buildDom({
                class: 'm-kv-document-page-footer',
                child: [
                    DOMElement.div({
                        attrs: {className: "m-kv-document-page-footer-right"},
                        children: [
                            DOMElement.div({
                                attrs: {
                                    className: "m-kv-document-link",
                                    onclick: function(){
                                        var data = params.formContainer.getValue();
                                        if (!data) return;
                                        header.title = LanguageModule.text("txt_folder_and_properties");
                                        firstPageCtn.style.display = "none";
                                        secondPageCtn.style.display = "";
                                    }
                                },
                                text: LanguageModule.text("txt_next")
                            })
                        ]
                    })
                ]
            })
        ]
    });
    var secondPageCtn = DOMElement.div({
        attrs: {
            style: {display: "none"}
        },
        children: [
            DOMElement.div({
                attrs: {
                    className: 'm-kv-document-page-content'
                },
                children: [params.editPropertiesForm]
            }),
            absol.buildDom({
                class: 'm-kv-document-page-footer',
                child: [
                    DOMElement.div({
                        attrs: {className: "m-kv-document-page-footer-left"},
                        children: [
                            DOMElement.div({
                                attrs: {
                                    className: "m-kv-document-link",
                                    onclick: function(){
                                        header.title = LanguageModule.text("txt_general_information");
                                        firstPageCtn.style.display = "";
                                        secondPageCtn.style.display = "none";
                                    }
                                },
                                text: LanguageModule.text("txt_back")
                            })
                        ]
                    }),
                    DOMElement.div({
                        attrs: {className: "m-kv-document-page-footer-right"},
                        children: [
                            DOMElement.div({
                                attrs: {
                                    className: "m-kv-document-link",
                                    onclick: function(){
                                        var values = params.editPropertiesForm.getValue();
                                        if (!values) return;
                                        header.title = LanguageModule.text("txt_approval");
                                        secondPageCtn.style.display = "none";
                                        thirdPageCtn.style.display = "";
                                    }
                                },
                                text: LanguageModule.text("txt_next")
                            })
                        ]
                    })
                ]
            })
        ]
    });
    var thirdPageCtn = DOMElement.div({
        attrs: {
            style: {display: "none"}
        },
        children: [
            DOMElement.div({
                attrs: {
                    className: 'm-kv-document-page-content'
                },
                children: [params.editApprovalForm]
            }),
            absol.buildDom({
                class: 'm-kv-document-page-footer',
                child: [
                    DOMElement.div({
                        attrs: {className: "m-kv-document-page-footer-left"},
                        children: [
                            DOMElement.div({
                                attrs: {
                                    className: "m-kv-document-link",
                                    onclick: function(){
                                        header.title = LanguageModule.text("txt_folder_and_properties");
                                        secondPageCtn.style.display = "";
                                        thirdPageCtn.style.display = "none";
                                    }
                                },
                                text: LanguageModule.text("txt_back")
                            })
                        ]
                    }),
                    DOMElement.div({
                        attrs: {className: "m-kv-document-page-footer-right"},
                        children: [
                            DOMElement.div({
                                attrs: {
                                    className: "m-kv-document-link",
                                    onclick: function(){
                                        params.func.save().then(function(){
                                            params.frameList.removeLast();
                                        });
                                    }
                                },
                                text: LanguageModule.text("txt_save")
                            })
                        ]
                    })
                ]
            })
        ]
    });
    var header = absol.buildDom({
        tag: 'mheaderbar',
        props: {
            actionIcon: DOMElement.i({
                attrs: {
                    className: "material-icons"
                },
                text: "arrow_back_ios"
            }),
            title: LanguageModule.text("txt_general_information")
        },
        on: {
            action: function(){
                params.frameList.removeLast();
            },
            command: function(event){
                event.commandItem.cmd();
            }
        }
    });
    var singlePage = absol.buildDom({
        tag: 'tabframe',
        child:[
            header,
            firstPageCtn,
            secondPageCtn,
            thirdPageCtn
        ]
    });
    params.frameList.addChild(singlePage);
    singlePage.requestActive();
};

theme.formDocument_managerAddDocumentChooseTemplate = function(params){
    var document_template_select = absol.buildDom({
        tag: "mselectmenu",
        style: {
            display: "block",
            width: "100%"
        },
        props: {
            items: params.templatesList,
            enableSearch: true
        },
        on: {
            change: function(){
                templateid = document_template_select.value;
                if (templateid != 0){
                    var index = params.database.document_templates.getIndex(templateid);
                    document_template_desc.value = params.database.document_templates.items[index].summary_content;
                }
                else {
                    document_template_desc.value = "";
                }
            }
        }
    });
    var document_template_desc = DOMElement.textarea({
        attrs: {
            style: {
                height: "70px",
                width: "100%"
            },
            disabled: true
        }
    });
    var commands = [{
        icon:  DOMElement.i({
            attrs: {
                className: "material-icons"
            },
            text: "save"
        }),
        cmd: function(){
            var templateid = document_template_select.value;
            params.frameList.removeLast();
            params.func.save(templateid);
        }
    }];
    var header = absol.buildDom({
        tag: 'mheaderbar',
        props: {
            actionIcon: DOMElement.i({
                attrs: {
                    className: "material-icons"
                },
                text: "arrow_back_ios"
            }),
            title: params.title,
            commands: commands
        },
        on: {
            action: function(){
                params.frameList.removeLast();
            },
            command: function(event){
                event.commandItem.cmd();
            }
        }
    });
    var singlePage = absol.buildDom({
        tag: 'tabframe',
        child:[
            header,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-content"
                },
                children: [
                    DOMElement.div({
                        attrs: {
                            className: "card-mobile-label-form-edit-first"
                        },
                        text: LanguageModule.text("txt_document_template")
                    }),
                    document_template_select,
                    DOMElement.div({
                        attrs: {
                            className: "card-mobile-label-form-edit"
                        },
                        text: LanguageModule.text("txt_summary_content")
                    }),
                    document_template_desc
                ]
            })
        ]
    });
    params.frameList.addChild(singlePage);
    singlePage.requestActive();
};

theme.formDocument_managerEditFolder = function(params){
    var parent_select = absol.buildDom({
        tag: "mselecttreemenu",
        style: {
            width: "100%",
            display: "block"
        },
        props: {
            enableSearch: true,
            items: contentModule.getDocumentFoldersSelectTreeMenu(params),
            value: params.data.parentid,
            disabled: true
        }
    });
    if (params.data.id > 0) parent_select.disabled = true;
    var name_input = theme.input({
        style: {
            width: "100%"
        },
        value: params.data.name
    });
    var dataView = [];
    if (params.data.parentid > 0) dataView.push(
        DOMElement.div({
            attrs: {
                className: "card-mobile-label-form-edit-first"
            },
            text: LanguageModule.text("txt_folder_parent")
        }),
        parent_select
    );
    dataView.push(
        DOMElement.div({
            attrs: {
                className: (params.data.parentid == 0)? "card-mobile-label-form-edit-first" : "card-mobile-label-form-edit"
            },
            text: LanguageModule.text("txt_name")
        }),
        name_input
    );
    var commands = [{
        icon:  DOMElement.i({
            attrs: {
                className: "material-icons"
            },
            text: "save"
        }),
        cmd: function(){
            var name = name_input.value.trim();
            if (name == ""){
                ModalElement.alert({
                    message: LanguageModule.text("war_txt_name_is_null"),
                    func: function(){
                        name_input.focus();
                    }
                });
                return;
            }
            var parentid = parent_select.value;
            for (var i = 0; i < params.database.document_folders.items.length; i++){
                if (params.database.document_folders.items[i].parentid != parentid) continue;
                if (params.database.document_folders.items[i].id == params.data.id) continue;
                if (params.database.document_folders.items[i].name == name){
                    ModalElement.alert({
                        message: LanguageModule.text("war_txt_name_is_exist"),
                        func: function(){
                            name_input.focus();
                        }
                    });
                    return;
                }
            }
            var data = {
                id: params.data.id,
                parentid: parentid,
                name: name
            };
            params.func.save(data).then(function(){
                params.frameList.removeLast();
            });
        }
    }];
    var header = absol.buildDom({
        tag: 'mheaderbar',
        props: {
            actionIcon: DOMElement.i({
                attrs: {
                    className: "material-icons"
                },
                text: "arrow_back_ios"
            }),
            title: params.title,
            commands: commands
        },
        on: {
            action: function(){
                params.frameList.removeLast();
            },
            command: function(event){
                event.commandItem.cmd();
            }
        }
    });
    var singlePage = absol.buildDom({
        tag: 'tabframe',
        child:[
            header,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-content"
                },
                children: dataView
            })
        ]
    });
    params.frameList.addChild(singlePage);
    singlePage.requestActive();
    name_input.focus();
};

theme.formDocument_managerContentData = function(params){
    var getPathItem = function(items, id){
        var list = [];
        if (id > 0){
            var index = params.database.document_folders.getIndex(id);
            var ni;
            for (var i = 0; i < params.database.document_folders.items[index].childIndexList.length; i++){
                ni = params.database.document_folders.items[index].childIndexList[i];
                list.push({
                    id: params.database.document_folders.items[ni].id,
                    name: params.database.document_folders.items[ni].name,
                    iconSrc: window.originHost + "/vivid_exticons/" + 'folder.svg'
                });
            }
            items.unshift({
                id: id,
                name: params.database.document_folders.items[index].name,
                iconSrc: window.originHost + "/vivid_exticons/" + 'folder.svg',
                items: list
            });
        }
        else {
            for (var i = 0; i < params.database.document_folders.items.length; i++){
                if (params.database.document_folders.items[i].parentid != 0) continue;
                list.push({
                    id: params.database.document_folders.items[i].id,
                    name: params.database.document_folders.items[i].name,
                    iconSrc: window.originHost + "/vivid_exticons/" + 'folder.svg'
                });
            }
            items.unshift({
                id: id,
                name: "",
                icon: "span.mdi.mdi-laptop",
                items: list
            });
        }
        if (id > 0){
            var index = params.database.document_folders.getIndex(id);
            getPathItem(items, params.database.document_folders.items[index].parentid);
        }
    };
    var getPathTreeList = function(folderid){
        var items = [];
        getPathItem(items, folderid);
        return items;
    };
    params.pathElt.style.display = "none";
    var getRowFolder = function(content){
        var cells = [
            {
                style: {
                    textAlign: "center",
                    width: "40px"
                },
                render: function(tdElt){
                    tdElt.addChild(DOMElement.img({
                        attrs: {
                            style: {
                                width: "20px",
                                height: "20px"
                            },
                            src: window.originHost + "/vivid_exticons/" + 'folder.svg',
                            onclick: function(){
                                content.func.clickRowFunc(content.id);
                            }
                        }
                    }))
                }
            },
            {
                innerText: content.name,
                render: function(tdElt){
                    tdElt.addChild(DOMElement.div({
                        attrs: {
                            onclick: function(event, me){
                                content.func.clickRowFunc(content.id);
                            }
                        },
                        text: content.name
                    }));
                }
            }
        ];
        cells.push({
            style: {textAlign: "center", width: "40px"},
            render: function(tdElt){
                var qmenuButton = DOMElement.div({
                    attrs: {
                        className: "card-icon-cover"
                    },
                    children: [DOMElement.i({
                        attrs: {
                            className: "material-icons bsc-icon-hover-black"
                        },
                        text: "more_horiz"
                    })]
                });
                absol.QuickMenu.toggleWhenClick(qmenuButton, {
                   getMenuProps: function (){
                       var quickMenuItems = [
                           {
                               text: LanguageModule.text("txt_edit_folder"),
                               value: "edit_folder",
                               extendClasses: "bsc-quickmenu",
                               icon: DOMElement.i({
                                   attrs: {
                                       className: "material-icons"
                                   },
                                   text: "create"
                               }),
                               cmd: function(){
                                   content.func.edit();
                               }
                           },
                           {
                               text: LanguageModule.text("txt_add_folder"),
                               value: "add_folder",
                               extendClasses: "bsc-quickmenu",
                               icon: DOMElement.i({
                                   attrs: {
                                       className: "mdi mdi-folder-plus"
                                   }
                               }),
                               cmd: function(){
                                   content.func.add_folder();
                               }
                           }
                       ];
                       if (content.func.add_document){
                           quickMenuItems.push({
                               text: LanguageModule.text("txt_add_document"),
                               value: "add_document",
                               extendClasses: "bsc-quickmenu",
                               icon: DOMElement.i({
                                   attrs: {
                                       className: "mdi mdi-file-plus"
                                   }
                               }),
                               cmd: function(){
                                   content.func.add_document();
                               }
                           });
                       }
                       if (content.func.move){
                           quickMenuItems.push({
                               text: LanguageModule.text("txt_move"),
                               value: "move",
                               extendClasses: "bsc-quickmenu",
                               icon: DOMElement.i({
                                   attrs: {
                                       className: "mdi mdi-folder-move"
                                   }
                               }),
                               cmd: function(){
                                   content.func.move();
                               }
                           });
                       }
                       if (content.func.delete) quickMenuItems.push({
                           text: LanguageModule.text("txt_delete_folder"),
                           value: "delete",
                           extendClasses: ["bsc-quickmenu", "red"],
                           icon: DOMElement.i({
                               attrs: {
                                   className: "material-icons"
                               },
                               text: "delete"
                           }),
                           cmd: function(){
                               content.func.delete().then(function(value){
                                   var x = tableView.rowOf(row)
                                   x.remove();
                                   params.pathElt.path = getPathTreeList(params.folderid);
                               });
                           }
                       });
                       return {
                           items: quickMenuItems
                       }
                   },
                   onSelect: function(item){
                       item.cmd();
                   }
               });
               tdElt.addChild(qmenuButton);
            }
        });
        var row = {
            cells: cells
        };
        return row;
    };
    var getRowDocument = function(content){
        var cells = [
            {style: {width: "40px"}},
            {
                innerText: content.name,
                render: function(tdElt){
                    tdElt.addChild(DOMElement.div({
                        attrs: {
                            onclick: function(event, me){
                                params.document_func.view(content.id);
                            }
                        },
                        text: content.name
                    }));
                }
            }
        ];
        cells.push({
            style: {textAlign: "center", width: "40px"},
            render: function(tdElt){
                var qmenuButton = DOMElement.div({
                    attrs: {
                        className: "card-icon-cover"
                    },
                    children: [DOMElement.i({
                        attrs: {
                            className: "material-icons bsc-icon-hover-black"
                        },
                        text: "more_horiz"
                    })]
                });
                absol.QuickMenu.toggleWhenClick(qmenuButton, {
                    getMenuProps: function(){
                        var quickMenuItems = [
                            {
                                text: LanguageModule.text("txt_view"),
                                icon: {tag: 'i', class: 'material-icons', child: {text: "visibility"}},
                                extendClasses: ['bsc-quickmenu'],
                                cmd: function () {
                                    params.document_func.view(content.id);
                                }
                            }
                        ];
                        if (content.privApproval){
                            quickMenuItems.push({
                                text: LanguageModule.text("txt_approved"),
                                icon: DOMElement.i({
                                    attrs: {
                                        className: "mdi mdi-checkbox-marked-circle",
                                        style: {
                                            color: "#489b0f"
                                        }
                                    }
                                }),
                                extendClasses: ['bsc-quickmenu'],
                                cmd: function () {
                                    params.document_func.approval(content.id);
                                }
                            });
                            quickMenuItems.push({
                                text: LanguageModule.text("txt_deny"),
                                icon: DOMElement.i({
                                    attrs: {
                                        className: "mdi mdi-close-circle",
                                        style: {
                                            color: "#f23c36"
                                        }
                                    }
                                }),
                                extendClasses: ['bsc-quickmenu'],
                                cmd: function () {
                                    params.document_func.deny(content.id);
                                }
                            });
                        }
                        if (content.marked){
                            quickMenuItems.push({
                                text: LanguageModule.text("txt_remove_marked"),
                                extendClasses: ["bsc-quickmenu"],
                                icon: DOMElement.i({
                                    attrs: {
                                        className: "material-icons",
                                        style: {
                                            color: "#ffa834"
                                        }
                                    },
                                    text: "star_border"
                                }),
                                cmd: function(){
                                    params.document_func.markedFunc(content.id, false).then(function(){
                                        content.marked = false;
                                        if (params.viewStatus == "fav"){
                                            var x = tableView.rowOf(row)
                                            x.remove();
                                        }
                                    });
                                }
                            });
                        }
                        else {
                            quickMenuItems.push({
                                text: LanguageModule.text("txt_add_to_marked"),
                                extendClasses: ["bsc-quickmenu"],
                                icon: DOMElement.i({
                                    attrs: {
                                        className: "material-icons",
                                        style: {
                                            color: "#ffa834"
                                        }
                                    },
                                    text: "star"
                                }),
                                cmd: function(){
                                    params.document_func.markedFunc(content.id, true).then(function(){
                                        content.marked = true;
                                    });
                                }
                            });
                        }
                        if (systemconfig.privSystem >= 2 || content.privEdit || content.privApproval) quickMenuItems.push({
                            text: LanguageModule.text("txt_delete"),
                            icon: {tag: 'i', class: 'material-icons', child: {text: "delete"}},
                            extendClasses: ['bsc-quickmenu', 'red'],
                            cmd: function () {
                                params.document_func.delete(content.id).then(function(value){
                                    var x = tableView.rowOf(row)
                                    x.remove();
                                });
                            }
                        });
                        return {items: quickMenuItems};
                    },
                    onSelect: function (item){
                       item.cmd();
                    }
                }, [3, 4]);
                tdElt.addChild(qmenuButton);
            }
        });
        var row = {
            cells: cells
        };
        return row;
    };
    var data = [];
    var status = params.status_select.value;
    if (params.viewStatus == "fav"){
        var view;
        for (var i = 0; i < params.database.documents.items.length; i++){
            view = true;
            if (!params.database.documents.items[i].marked) continue;
            if (!params.database.documents.items[i].privView) continue;
            if (status != -1 && params.database.documents.items[i].unused != status) continue;
            for (var type in params.filters){
                if (params.filters[type].value != 0 && params.filters[type].value != params.database.documents.items[i].properties[type]) view = false;
            }
            if (view) data.push(getRowDocument(params.database.documents.items[i]));
        }
    }
    else {
        for (var i = 0; i < params.database.document_folders.items.length; i++){
            if (params.database.document_folders.items[i].parentid == params.folderid){
                data.push(getRowFolder(params.getRowFolder(params.database.document_folders.items[i])));
            }
        }
        if (params.folderid > 0){
            params.pathElt.style.display = "";
            params.pathElt.path = getPathTreeList(params.folderid);
            hr.menu.changeCurrentUrlTab(params, "document_manager/" + params.folderid);
            var index = params.database.document_folders.getIndex(params.folderid);
            var ni, ex;
            for (var i = 0; i < params.database.document_folders.items[index].documentIndexList.length; i++){
                view = true;
                ni = params.database.document_folders.items[index].documentIndexList[i];
                if (!params.database.documents.items[ni].privView) continue;
                if (status != -1 && params.database.documents.items[ni].unused != status) continue;
                for (var type in params.filters){
                    if (params.filters[type].value != 0 && params.filters[type].value != params.database.documents.items[i].properties[type]) view = false;
                }
                if (view) data.push(getRowDocument(params.database.documents.items[ni]));
            }
        }
    }
    var tableView = absol.buildDom({
        tag: "dynamictable",
        props: {
            adapter: {
               data: {
                   head: {
                       rows: []
                   },
                   body: {
                       rows: data
                   }
               }
           }
        }
    });
    DOMElement.removeAllChildren(params.data_container);
    tableView.attachSearchInput(params.inputsearchbox);
    params.data_container.appendChild(tableView);
};

theme.formDocument_managerInit = function (params){
    var filterFunc = function(){
        var children = [];
        for (var i = 0; i < comboboxFilterList.length; i++){
            children.push(
                DOMElement.div({
                    attrs: {
                        className: (i == 0)? "card-mobile-label-form-edit-first" : "card-mobile-label-form-edit"
                    },
                    text: comboboxFilterList[i].name
                }),
                comboboxFilterList[i].elt
            );
        }
        children.push(
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit"
                },
                text: LanguageModule.text("txt_document_status")
            }),
            status_select
        );
        theme.modalFormMobile({
            title: LanguageModule.text("txt_filter"),
            bodycontent: DOMElement.div({
                children: children
            })
        });
    };
    var filters = {};
    var comboboxFilterList = [];
    for (var i = 0; i < params.listPropertiesRoot.length; i++){
        filters[params.listPropertiesRoot[i].id] = absol.buildDom({
            tag: "mselectmenu",
            style: {
                display: "block",
                width: "100%"
            },
            props: {
                items: contentModule.makeDocument_propertiesSelectFilterItems(params, params.listPropertiesRoot[i].id),
                enableSearch: true
            },
            on: {
                change: function(){
                    params.filter_change_func();
                }
            }
        });
        comboboxFilterList.push({
            name: params.listPropertiesRoot[i].name,
            elt: filters[params.listPropertiesRoot[i].id]
        });
    }
    var status_select = absol.buildDom({
        tag: "mselectmenu",
        style: {
            display: "block",
            width: "100%"
        },
        props: {
            items: [
                {value: -1, text: LanguageModule.text("txt_all")},
                {value: 0, text: LanguageModule.text("txt_using_documents")},
                {value: 1, text: LanguageModule.text("txt_unused_documents")}
            ],
            value: 0
        },
        on: {
            change: function(){
                params.status_change_func();
            }
        }
    });
    var commands = [];
    commands.push({
        icon:  DOMElement.i({
            attrs: {
                className: "material-icons"
            },
            text: "filter_alt"
        }),
        cmd: function(){
            filterFunc();
        }
    });
    commands.push({
        icon:  DOMElement.i({
            attrs: {
                className: "material-icons"
            },
            text: "search"
        }),
        cmd: function(){
            header.searchMode(true);
        }
    });
    var inputsearchbox = absol.buildDom({
        tag:'searchcrosstextinput',
        style: {
            width: "var(--searchbox-width)"
        },
        props:{
            placeholder: LanguageModule.text("txt_search")
        }
    });
    var header = absol.buildDom({
        tag: 'headerbarwithsearch',
        props: {
            actionIcon: DOMElement.i({
                attrs: {
                    className: "material-icons"
                },
                text: "arrow_back_ios"
            }),
            title: LanguageModule.text("txt_document_manager"),
            commands: commands,
            quickmenu: {
                getMenuProps: function(){
                    var quickmenuItems =  [];
                    if (params.viewStatus == "fav"){
                        quickmenuItems.push({
                            text: LanguageModule.text("txt_all_view"),
                            extendClasses: "bsc-quickmenu",
                            icon: DOMElement.i({
                                attrs: {
                                    className: "mdi mdi-table-eye"
                                }
                            }),
                            cmd: function(){
                                params.viewStatus = "tree";
                                params.type_view_change_func(params.viewStatus);
                            }
                        });
                    }
                    else {
                        quickmenuItems.push({
                            text: LanguageModule.text("txt_marked_view"),
                            extendClasses: "bsc-quickmenu",
                            icon: DOMElement.i({
                                attrs: {
                                    className: "material-icons",
                                    style: {
                                        color: "#ffa834"
                                    }
                                },
                                text: "star"
                            }),
                            cmd: function(){
                                params.viewStatus = "fav";
                                params.type_view_change_func(params.viewStatus);
                            }
                        });
                    }
                    if (params.cmdbutton.add_folder !== undefined){
                        quickmenuItems.push({
                            text: LanguageModule.text("txt_add_folder"),
                            extendClasses: "bsc-quickmenu",
                            icon:  DOMElement.i({
                                attrs: {
                                    className: "material-icons"
                                },
                                text: "add"
                            }),
                            cmd: params.cmdbutton.add_folder
                        });
                        quickmenuItems.push({
                            text: LanguageModule.text("txt_add_document"),
                            extendClasses: "bsc-quickmenu",
                            icon:  DOMElement.i({
                                attrs: {
                                    className: "material-icons"
                                },
                                text: "add"
                            }),
                            cmd: params.cmdbutton.add_document
                        });
                    }
                    return {
                        extendClass: 'cd-context-menu',
                        items: quickmenuItems
                    };
                },
                onSelect: function (x) {
                    x.cmd();
                }
            }
        },
        data:{
            searchInput: inputsearchbox
        },
        on: {
            action: params.cmdbutton.close,
            command: function(event){
                event.commandItem.cmd();
            }
        }
    });
    var singlePage = absol.buildDom({
        tag: 'tabframe',
        child:[
            header,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-content"
                },
                children: [
                    params.pathElt,
                    params.data_container
                ]
            })
        ]
    });
    singlePage.inputsearchbox = inputsearchbox;
    singlePage.filters = filters;
    singlePage.status_select = status_select;
    return singlePage;
};
ModuleManagerClass.register({
    name: "Document_manager_view",
    prerequisites: ["ModalElement"]
});

VaKeR 2022