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/theme/mobile/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/html/tech_preview/hr/theme/mobile/partner_checkin_view.js
"use strict";

theme.formPartner_checkinEdit = function(params){
    var commands = [{
        icon:  DOMElement.i({
            attrs: {
                className: "material-icons"
            },
            text: "save"
        }),
        cmd: function(){
            var data = data_ctn.getValue();
            if (!data) return;
            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: LanguageModule.text("txt_add"),
            commands: commands
        },
        on: {
            action: function(){
                params.frameList.removeLast();
            },
            command: function(event){
                event.commandItem.cmd();
            }
        }
    });
    if (window.isApp){
        var getLocation = function(){
            mobileHost.getLocation(function(value){
                if (value == null){
                    ModalElement.alert({message: LanguageModule.text("war_txt_devices_not_supported_gps")});
                    return;
                }
                else {
                    if (absol.$.isRealNumber(value.accuracy) && value.accuracy > hr.maximumAllowableAccuracy){
                        ModalElement.alert({message: LanguageModule.text("war_txt_maximum_allowable_error")});
                        return;
                    }
                    checkin_gps_input.value = value.latitude + "," + value.longitude;
                }
            });
        };
        var isPriv = mobileHost.checkLocationPermission();
        if (isPriv){
            getLocation();
        }
        else {
            mobileHost.requestLocationPermission(function(value){
                if (value) getLocation();
            });
        }
    }
    else {
        if (navigator.geolocation){
            navigator.geolocation.getCurrentPosition(function(position){
                if (absol.$.isRealNumber(position.coords.accuracy) && position.coords.accuracy > hr.maximumAllowableAccuracy){
                    ModalElement.alert({message: LanguageModule.text("war_txt_maximum_allowable_error")});
                    return;
                }
                checkin_gps_input.value = position.coords.latitude + "," + position.coords.longitude;
            }, function(err){
                if (err){
                    ModalElement.alert({message: err.message});
                }
            });
        }
        else {
            console.log("Geolocation is not supported by this browser.");
        }
    }
    var time_input = absol.buildDom({
        tag: "datetimeinput",
        style: {
            display: "block",
            width: "100%"
        },
        props: {
            value: new Date(),
            notNull: true
        }
    });
    var employee_select = absol.buildDom({
        tag: "selecttreeleafmenu",
        style: {
            display: "block",
            width: "100%"
        },
        props: {
            items: contentModule.getMemberOfEmployeeSelectMenu(params),
            enableSearch: true
        }
    });
    if (params.employeeOfMe.length > 0) employee_select.value = params.employeeOfMe[0];
    var changeDistanceFunc = function(){
        var lat1, lng1, lat2, lng2;
        var partnergps = partnergps_input.value.trim();
        var x = partnergps.indexOf(",");
        if (x > 0){
            lat1 = parseFloat(partnergps.substr(0, x));
            lng1 = parseFloat(partnergps.substr(x + 1));
        }
        else {
            lat1 = 0;
            lng1 = 0;
        }
        var checkingps = checkin_gps_input.value.trim();
        var x = checkingps.indexOf(",");
        if (x > 0){
            lat2 = parseFloat(checkingps.substr(0, x));
            lng2 = parseFloat(checkingps.substr(x + 1));
        }
        else {
            lat2 = 0;
            lng2 = 0;
        }
        if (lat1 && lng1 && lat2 && lng2){
            distance_input.value = Math.round(contentModule.calcCrow(lat1, lng1, lat2, lng2));
        }
        else {
            distance_input.value = "";
        }
    };
    var partner_select = absol.buildDom({
        tag: "selectmenu",
        class: "as-keep-dropdown-icon",
        style: {
            display: "block",
            width: "100%"
        },
        props: {
            items: [{value: 0, text: LanguageModule.text("txt_select_value")}],
            readOnly: true
        },
        on: {
            click: function(){
                params.partner_select_click_func(this.value).then(function(x){
                    partner_select.items = [x];
                    partner_select.value = x.value;
                    partner_select.emit("change");
                });
            },
            change: function(){
                var k = params.database.partner.getIndex(this.value);
                if (k >= 0){
                    partnergps_input.value = params.database.partner.items[k].gps;
                    partner_gps_while_checkin_input.value = params.database.partner.items[k].gps;
                }
                else {
                    partnergps_input.value = "";
                    partner_gps_while_checkin_input.value = "";
                }
                changeDistanceFunc();
            }
        }
    });
    var partnergps_input = theme.input({
        style: {width: "100%", minWidth: "300px"},
        disabled: true
    });
    var toggleCheckinFollowGps = function(){
        if (checkin_follow_gps_checkbox.checked){
            absol.$('.checkin-follow-gps', data_ctn, function(elt){
                elt.style.display = "";
            });
            time_input.value = new Date();
            time_input.disabled = true;
        }
        else {
            absol.$('.checkin-follow-gps', data_ctn, function(elt){
                elt.style.display = "none";
            });
            time_input.disabled = false;
        }
    };
    var checkin_follow_gps_checkbox = absol.buildDom({
        tag: "checkbox",
        style: {
            marginLeft: "var(--control-horizontal-distance-2)"
        },
        props: {
            checked: true
        },
        on: {
            change: function(){
                toggleCheckinFollowGps();
            }
        }
    });
    var checkin_gps_input = theme.input({
        style: {width: "100%", minWidth: "300px"},
        disabled: true
    });
    var partner_gps_while_checkin_input = theme.input({
        style: {width: "100%", minWidth: "300px"},
        disabled: true
    });
    var distance_input = theme.input({
        style: {width: "100%", minWidth: "300px"},
        disabled: true
    });
    var note_input = DOMElement.textarea({
        attrs: {
            className: "cardSimpleTextarea",
            style: {
                width: "100%",
                height: "70px"
            }
        }
    });
    var data_ctn = DOMElement.div({
        children: [
            DOMElement.div({
                attrs: {className: "card-mobile-label-form-edit-first"},
                text: LanguageModule.text("txt_employee")
            }),
            employee_select,
            DOMElement.div({
                attrs: {className: "card-mobile-label-form-edit"},
                text: LanguageModule.text("txt_partner")
            }),
            partner_select,
            DOMElement.div({
                attrs: {className: "card-mobile-label-form-edit"},
                text: LanguageModule.text("txt_partner_gps")
            }),
            partnergps_input,
            DOMElement.div({
                attrs: {className: "card-mobile-label-form-edit"},
                children: [
                    DOMElement.span({
                        text: LanguageModule.text("txt_checkin_follow_gps")
                    }),
                    checkin_follow_gps_checkbox
                ]
            }),
            DOMElement.div({
                attrs: {className: "card-mobile-label-form-edit"},
                text: LanguageModule.text("txt_checkintime")
            }),
            time_input,
            DOMElement.div({
                attrs: {className: "card-mobile-label-form-edit checkin-follow-gps"},
                text: LanguageModule.text("txt_checkin_gps")
            }),
            DOMElement.div({
                attrs: {className: "checkin-follow-gps"},
                children: [checkin_gps_input]
            }),
            DOMElement.div({
                attrs: {className: "card-mobile-label-form-edit checkin-follow-gps"},
                text: LanguageModule.text("txt_partner_gps_while_checkin")
            }),
            DOMElement.div({
                attrs: {className: "checkin-follow-gps"},
                children: [partner_gps_while_checkin_input]
            }),
            DOMElement.div({
                attrs: {className: "card-mobile-label-form-edit checkin-follow-gps"},
                text: LanguageModule.text("txt_distance_met")
            }),
            DOMElement.div({
                attrs: {className: "checkin-follow-gps"},
                children: [distance_input]
            }),
            DOMElement.div({
                attrs: {className: "card-mobile-label-form-edit"},
                text: LanguageModule.text("txt_note")
            }),
            note_input
        ]
    });
    toggleCheckinFollowGps();
    data_ctn.getValue = function(){
        var employeeid = employee_select.value;
        if (employeeid == 0){
            ModalElement.alert({message: LanguageModule.text("txt_employee_is_null")});
            return;
        }
        var partnerid = partner_select.value;
        if (partnerid == 0){
            ModalElement.alert({message: LanguageModule.text("txt_partner_is_null")});
            return;
        }
        var checkin_follow_gps = checkin_follow_gps_checkbox.checked;
        var data = {
            checkintime: time_input.value,
            employeeid: employeeid,
            partnerid: partnerid,
            checkin_follow_gps: checkin_follow_gps? 1 : 0,
            note: note_input.value,
            gps: partnergps_input.value
        };
        if (checkin_follow_gps){
            var checkingps = checkin_gps_input.value;
            var distance = parseFloat(distance_input.value);
            if (isNaN(distance) || distance > hr.maximumDistance){
                ModalElement.alert({message: LanguageModule.text2("war_txt_checkin_distance_invalid", [hr.maximumDistance])});
                return;
            }
            data.checkingps = checkingps;
            data.partnergps = partner_gps_while_checkin_input.value;
            data.distance = distance;
        }
        return data;
    };
    var singlePage = absol.buildDom({
        tag: 'tabframe',
        child:[
            header,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-content"
                },
                children: [data_ctn]
            })
        ]
    });
    params.frameList.addChild(singlePage);
    singlePage.requestActive();
};

theme.formPartner_checkinViewMaps = function(params){
    var viewer = absol.buildDom({
        tag: 'locationview',
        style: {
            height: '600px',
            width: "100%",
            maxWidth: "100vw",
            maxHeight: "100vh"
        },
        props: {
            polylines: params.polylines,
            zoom: 16,
            showPolylineRoute: params.view_line
        }
    });
    var view_line_checkbox = absol.buildDom({
        tag: "checkbox",
        style: {
            marginRight: "var(--control-horizontal-distance-2)"
        },
        props: {
            text: LanguageModule.text("txt_show_path"),
            checked: params.view_line
        },
        on: {
            change: function(){
                viewer.showPolylineRoute = this.checked;
            }
        }
    });
    var view_line_ctn = DOMElement.div({
        attrs: {
            style: {
                marginBottom: "20px"
            }
        },
        children: [
            view_line_checkbox
        ]
    });
    var polylinesT = viewer.getPolylines();
    var k;
    var employeesDic = contentModule.makeDictionaryIndex(params.database.employees.items);
    for (var i = 0; i < polylinesT.length; i++){
        k = employeesDic[polylinesT[i].id];
        view_line_ctn.appendChild(DOMElement.div({
            attrs: {
                style: {
                    paddingLeft: "var(--control-horizontal-distance-1)",
                    lineHeight: "var(--control-height)",
                    color: polylinesT[i].color,
                    whiteSpace: "nowrap",
                    verticalAlign: "middle",
                    display: "inline-block"
                }
            },
            text: params.database.employees.items[k].fullname + ": " + Math.round(polylinesT[i].sumDistance * 100 )/100 + " (km)"
        }));
    }
    var header = absol.buildDom({
        tag: 'mheaderbar',
        props: {
            actionIcon: DOMElement.i({
                attrs: {
                    className: "material-icons"
                },
                text: "arrow_back_ios"
            }),
            title: LanguageModule.text("txt_maps")
        },
        on: {
            action: function(){
                params.frameList.removeLast();
            }
        }
    });
    var singlePage = absol.buildDom({
        tag: 'tabframe',
        child:[
            header,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-content"
                },
                children: [
                    view_line_ctn,
                    viewer
                ]
            })
        ]
    });
    params.frameList.addChild(singlePage);
    singlePage.requestActive();
};

theme.formPartner_checkinContentData = function(params){
    var detailsView = function(){
        var formPartner_checkinGetRow = function(content){
            var text = "", k;
            k = employeesDic[content.employeeid];
            if (k === undefined) return null;
            text += params.database.employees.items[k].fullname;
            k = partnerDic[content.partnerid];
            if (k === undefined) return null;
            text += " - " + contentModule.getDateTimeView(content.checkintime);
            if (content.checkin_follow_gps) text += " (" + content.distance + " m)";
            var item = absol.buildDom({
                tag: "mcabinetitem",
                child: [
                    DOMElement.div({
                        children: [
                            DOMElement.div({text: text}),
                            DOMElement.div({
                                attrs: {className: "m-hr-description"},
                                text: params.database.partner.items[k].name
                            })
                        ]
                    })
                ]
            });
            var itemsList = [];
            if (content.func.delete) itemsList.push({
                text: LanguageModule.text("txt_delete"),
                extendClasses: "bsc-quickmenu red",
                icon: {
                    tag: "i",
                    class: "material-icons",
                    child: { text: "delete" }
                },
                cmd: function(){
                    content.func.delete().then(function(value){
                        item.selfRemove();
                    });
                }
            });
            if (itemsList.length > 0){
                item.quickmenu = {
                    props: {
                        extendClasses: 'cd-context-menu',
                        items: itemsList
                    },
                    onSelect: function (x) {
                        x.cmd();
                    }
                };
            }
            return item;
        };
        var employeesDic = contentModule.makeDictionaryIndex(params.database.employees.items);
        var partnerDic = contentModule.makeDictionaryIndex(params.database.partner.items);
        DOMElement.removeAllChildren(params.ctn);
        var childs = [], row;
        for (var i = 0; i < dataView.length; i++){
            row = formPartner_checkinGetRow(dataView[i]);
            if (row) childs.push(row);
        }
        var list = absol.buildDom({
            tag: "mcabinetlist",
            child: childs
        });
        if (params.inputsearchbox) list.addInputSearch(params.inputsearchbox);
        params.ctn.appendChild(list);
    };
    var dataView = [], x;
    for (var i = 0; i < params.database.partner_checkin.items.length; i++){
        if (params.partnerid != 0 && params.database.partner_checkin.items[i].partnerid != params.partnerid) continue;
        if (params.cityid != 0 && params.database.partner_checkin.items[i].cityid != params.cityid) continue;
        x = params.getCellPartner_checkin(params.database.partner_checkin.items[i]);
        if (x){
            dataView.push(x);
        }
    }
    var syntheticView = function(){
        contentModule.loadListPrimaryTypeEnum("member_of_employee").then(function(values){
            if (values.length > 0) values[0].text = "";
            var listItemsDic = new absol.ListDictionary(values);
            var dic = {};
            for (var i = 0; i < dataView.length; i++){
                if (!dic[dataView[i].employeeid]){
                    dic[dataView[i].employeeid] = {};
                }
                if (!dic[dataView[i].employeeid][dataView[i].partnerid]){
                    dic[dataView[i].employeeid][dataView[i].partnerid] = {
                        count: 0,
                        partner: dataView[i].partner,
                        data: []
                    };
                }
                dic[dataView[i].employeeid][dataView[i].partnerid].count++;
                dic[dataView[i].employeeid][dataView[i].partnerid].data.push(dataView[i]);
            }
            var data = [], eOld, counter1, counter2 = 0;
            for (var x in dic){
                counter1 = 0;
                if (data_module.all_employeesDic[x]) x = data_module.all_employeesDic[x];
                var item = listItemsDic.getItemByValue(x);
                var text;
                if (!item) text = "";
                else text = item.text;
                for (var y in dic[x]){
                    counter1 += dic[x][y].count;
                }
                data.push([
                    {
                        attrs: {style: {fontWeight: "bold", backgroundColor: "var(--table-even-row-color)"}},
                        text: text
                    },
                    {
                        attrs: {align: "right", style: {fontWeight: "bold", backgroundColor: "var(--table-even-row-color)"}},
                        text: counter1
                    }
                ]);
                for (var y in dic[x]){
                    data.push([
                        {
                            attrs: {style: {paddingLeft: "30px"}},
                            text: dic[x][y].partner
                        },
                        {
                            attrs: {align: "right"},
                            text: dic[x][y].count
                        }
                    ]);
                    counter2 += dic[x][y].count;
                }
            }
            data.push([
                {
                    attrs: {style: {fontWeight: "bold"}},
                    text: LanguageModule.text("txt_total")
                },
                {
                    attrs: {align: "right", style: {fontWeight: "bold"}},
                    text: counter2
                }
            ]);
            DOMElement.removeAllChildren(params.ctn);
            var header = [];
            var tableView = DOMElement.table({
                attrs: {style: {width: "100%"}},
                header: header,
                data: data
            });
            if (params.inputsearchbox) tableView.addSearchBox(params.inputsearchbox);
            params.ctn.appendChild(DOMElement.div({
                attrs: {className: "cardsimpletableclass"},
                children: [tableView]
            }));
        });
    };
    switch (params.typeView) {
        case "details":
            detailsView();
            break;
        case "synthetic":
            syntheticView();
            break;
        default:
            detailsView();
    }
    return dataView;
};

theme.formPartner_checkinInit = function (params){
    var filterFunc = function(){
        theme.modalFormMobile({
            title: LanguageModule.text("txt_filter"),
            bodycontent: filter_ctn
        });
    };
    var employeeItems = contentModule.getMemberOfEmployeeSelectMenu(params);
    employeeItems.splice(0, 1);
    var employee_select = absol.buildDom({
        tag: "multichecktreemenu",
        style: {
            display: "block",
            width: "100%"
        },
        props: {
            items: employeeItems,
            enableSearch: true
        },
        on: {
            change: function(){
                params.changeTimeFunc();
            }
        }
    });
    if (params.employeeOfMe.length > 0) employee_select.values = [params.employeeOfMe[0]];
    var partner_select = absol.buildDom({
        tag: "selectmenu",
        class: "as-keep-dropdown-icon",
        style: {
            display: "block",
            width: "100%"
        },
        props: {
            items: [{value: 0, text: LanguageModule.text("txt_all_partner")}],
            readOnly: true
        },
        on: {
            click: function(){
                params.partner_select_click_func(this.value).then(function(x){
                    partner_select.items = [x];
                    partner_select.value = x.value;
                    partner_select.emit("change");
                });
            },
            change: function(){
                params.filter_change_func();
            }
        }
    });
    var nation_city_items = contentModule.getNationCityDualSelectMenu(params);
    nation_city_items.forEach(function(nItem){
        nItem.items.unshift({value: 0, text: LanguageModule.text("txt_all_city")});
    });
    nation_city_items.unshift({
        value: 0,
        text: LanguageModule.text("txt_all_nation"),
        items: [{value: 0, text: LanguageModule.text("txt_all_city")}]
    });
    var nation_city_select = absol.buildDom({
        tag: "dualselectmenu",
        props: {
            items: nation_city_items,
            value: [0, 0],
            enableSearch: true
        },
        on: {
            change: function(){
                params.filter_change_func();
            }
        }
    });
    var toggleTimeOption = function(){
        if (time.value == 0) {
            absol.$('.time-option', filter_ctn, function(elt){
                elt.style.display = "";
            });
        }
        else {
            absol.$('.time-option', filter_ctn, function(elt){
                elt.style.display = "none";
            });
        }
    };
    var timeItems = [
        {value: 1, text: LanguageModule.text("txt_yesterday")},
        {value: 2, text: LanguageModule.text("txt_today")},
        {value: 3, text: LanguageModule.text("txt_last_week")},
        {value: 4, text: LanguageModule.text("txt_this_week")},
        {value: 5, text: LanguageModule.text("txt_last_7_days")},
        {value: 13, text: LanguageModule.text("txt_7_days_before_after")},
        {value: 6, text: LanguageModule.text("txt_last_month")},
        {value: 7, text: LanguageModule.text("txt_this_month")},
        {value: 8, text: LanguageModule.text("txt_last_30_days")},
        {value: 9, text: LanguageModule.text("txt_last_quarter")},
        {value: 10, text: LanguageModule.text("txt_this_quarter")},
        {value: 11, text: LanguageModule.text("txt_last_90_days")},
        {value: 12, text: LanguageModule.text("txt_last_year")},
        {value: 14, text: LanguageModule.text("txt_this_year")},
        {value: 0, text: LanguageModule.text("txt_option")}
    ];
    var time = absol._({
        tag: "mselectmenu",
        style: {
            display: "block",
            width: "100%"
        },
        props: {
            items: timeItems,
            value: 13,
            enableSearch: true
        },
        on: {
            change: function(){
                toggleTimeOption();
                params.changeTimeFunc();
            }
        }
    });
    var start = absol._({
        tag: 'dateinput',
        props: {
            value: new Date(),
            max: new Date(),
            notNull: true
        },
        on: {
            change: function(){
                params.changeTimeFunc();
                end.min = this.value;
            }
        }
    });
    var end = absol._({
        tag: 'dateinput',
        props: {
            value: new Date(),
            min: new Date(),
            notNull: true
        },
        on: {
            change: function(){
                params.changeTimeFunc();
                start.max = this.value;
            }
        }
    });
    var filter_ctn = DOMElement.div({
        children: [
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit-first"
                },
                text: LanguageModule.text("txt_partner")
            }),
            partner_select,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit"
                },
                text: LanguageModule.text("txt_employee")
            }),
            employee_select,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit"
                },
                text: LanguageModule.text("txt_city")
            }),
            nation_city_select,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit"
                },
                text: LanguageModule.text("txt_time")
            }),
            time,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit time-option"
                },
                text: LanguageModule.text("txt_time_start")
            }),
            DOMElement.div({
                attrs: {className: "time-option"},
                children: [start]
            }),
            DOMElement.div({
                attrs: {
                    className: "card-mobile-label-form-edit time-option"
                },
                text: LanguageModule.text("txt_time_end")
            }),
            DOMElement.div({
                attrs: {className: "time-option"},
                children: [end]
            })
        ]
    });
    toggleTimeOption();
    var commands = [];
    if (params.cmdbutton.add !== undefined){
        commands.push({
            icon: DOMElement.i({
                attrs: {
                    className: "material-icons"
                },
                text: "add"
            }),
            cmd: params.cmdbutton.add
        });
    }
    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_partner_checkin"),
            commands: commands,
            quickmenu: {
                getMenuProps: function(){
                    var quickmenuItems = [];
                    quickmenuItems.push(
                        {
                            text: LanguageModule.text("txt_filter"),
                            extendClasses: "bsc-quickmenu",
                            icon: DOMElement.i({
                                attrs: {
                                    className: "material-icons m-hr-icon-filter active"
                                },
                                text: "filter_alt"
                            }),
                            cmd: function(){
                                filterFunc();
                            }
                        },
                        {
                            text: LanguageModule.text("txt_view_maps"),
                            extendClasses: "bsc-quickmenu",
                            icon: DOMElement.i({
                                attrs: {
                                    className: "material-icons"
                                },
                                text: "visibility"
                            }),
                            cmd: function(){
                                params.cmdbutton.view_maps();
                            }
                        },
                        {
                            text: LanguageModule.text("txt_search"),
                            extendClasses: "bsc-quickmenu",
                            icon: DOMElement.i({
                                attrs: {
                                    className: "material-icons"
                                },
                                text: "search"
                            }),
                            cmd: function(){
                                header.searchMode(true);
                            }
                        }
                    );
                    if (params.typeView == "details"){
                        quickmenuItems.push({
                            text: LanguageModule.text("txt_synthetic_view"),
                            extendClasses: "bsc-quickmenu",
                            icon: DOMElement.i({
                                attrs: {
                                    className: ""
                                }
                            }),
                            cmd: function(){
                                params.typeView = "synthetic";
                                params.change_type_view(params.typeView);
                            }
                        });
                    }
                    else {
                        quickmenuItems.push({
                            text: LanguageModule.text("txt_details_view"),
                            extendClasses: "bsc-quickmenu",
                            icon: DOMElement.i({
                                attrs: {
                                    className: ""
                                }
                            }),
                            cmd: function(){
                                params.typeView = "details";
                                params.change_type_view(params.typeView);
                            }
                        });
                    }
                    return {
                        extendClasses: 'cd-context-menu',
                        items: quickmenuItems
                    };
                },
                onSelect: function (x) {
                    x.cmd();
                }
            }
        },
        data:{
            searchInput: inputsearchbox
        },
        on: {
            action: params.cmdbutton.close,
            command: function(event){
                event.commandItem.cmd();
            }
        }
    });
    header.$quickmenuBtn.addClass(["m-hr-icon-quickmenu", "as-active"]);
    var singlePage = absol.buildDom({
        tag: 'tabframe',
        child:[
            header,
            DOMElement.div({
                attrs: {
                    className: "card-mobile-content"
                },
                children: [params.data_container]
            })
        ]
    });
    singlePage.employee_select = employee_select;
    singlePage.partner_select = partner_select;
    singlePage.nation_city_select = nation_city_select;
    singlePage.inputsearchbox = inputsearchbox;
    singlePage.time_select = time;
    singlePage.start = start;
    singlePage.end = end;
    return singlePage;
};
ModuleManagerClass.register({
    name: "Partner_checkin_view",
    prerequisites: ["ModalElement"]
});

VaKeR 2022