Skip to content
Snippets Groups Projects
Select Git revision
  • 2a68fee7efb9ce7c61eabf4ae589fbda45294730
  • master default protected
  • update-renderer-class
3 results

index.php

Blame
  • functions.js 14.56 KiB
    // ----------------------------------------------------------------------
    // VARS
    // ----------------------------------------------------------------------
    
    // current winbox instances
    var aWinBoxes = {};
    
    // default frame border color for winboxes
    var WINBOX_data = false;
    var WINBOX_lsvariable = "winbox_data";
    var WINBOX_defaults = {
        background: "#456",
        border: 5,
        class: ["no-min", "no-max", "no-full", "ciwinboxinfos"],
    
        // viewport
        top: 70,
        right: 20,
        bottom: 20,
        left: 20
    
    };
    
    
    /**
     * get data of all winboxes - or of a single winbox only - from localstorage
     * @param {string} sId  optional: id of a winbox
     * @returns 
     */
    function wb_getdata(sId) {
        WINBOX_data = WINBOX_data 
            ? WINBOX_data 
            : (localStorage.getItem(WINBOX_lsvariable) 
                ? JSON.parse(localStorage.getItem(WINBOX_lsvariable)) 
                : {}
            );
        return sId
            ? (WINBOX_data[sId] ? WINBOX_data[sId] : {})
            : WINBOX_data;
    }
    /**
     * get data of all winboxes - or of a single winbox only - from localstorage
     * @param {string} sId  optional: id of a winbox
     * @returns 
     */
    function wb_getdefaults(sId, aOverrides) {
        var _aReturn = Object.assign({}, WINBOX_defaults);
        for (var key in aOverrides) {
            _aReturn[key] = aOverrides[key];
        }
        var _aData = wb_getdata(sId);
        for (var key in _aData) {
            _aReturn[key] = _aData[key];
        }
        if (_aReturn['x']<_aReturn['left']){
            _aReturn['x']=_aReturn['left'];
        }
        if (_aReturn['y']<_aReturn['top']){
            _aReturn['y']=_aReturn['top'];
        }
        return _aReturn;
    }
    /**
     * save data for a given winbox
     * @param {string} sId         id of a winbox
     * @param {array} _aNewvalues  properties to store as key+value
     */
    function wb_savedata(sId, _aNewvalues) {
        WINBOX_data = WINBOX_data ? WINBOX_data : wb_getdata();
        if (!WINBOX_data[sId]) {